dragonfly.git
11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 17 May 2012 18:01:30 +0000 (11:01 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agovkernel: Fix compilation with profiling support.
Sascha Wildner [Thu, 17 May 2012 14:17:22 +0000 (16:17 +0200)]
vkernel: Fix compilation with profiling support.

The vkernel is a special userland program in the regard that its Makefile
is generated by config(8), which is kind of tailored to the real kernel.

So first of all, we have to modify config(8) to detect it's a vkernel we
want to build and in this case it should not define GPROF which otherwise
activates the real kernel's profiling bits.

Then, modify libkern's mcount.c to skip kernel specific parts too.

Then, modify the vkernels' Makefiles to take into account ${PROF} (and
while we're here, ${DEBUG} too) which are set by the surrounding Makefile
which is generated by config(8).

The vkernel is now (from profiling point of view) treated like any other
userland program.

Last but not least, add some documentation about building a vkernel with
profiling support to vkernel's manpage.

To build with profiling, simply add CONFIGARGS=-p to the buildkernel
command line. It will need the config(8) program to be in /usr/obj's
btools dir, so either a buildworld with this commit needs to be done,
or config can be installed manually to /usr/sbin and nativekernel can
be used.

Tested-by: tuxillo
11 years agotcp: Ignore TCP_NOPUSH socketopt by default
Sepherosa Ziehau [Thu, 17 May 2012 09:58:41 +0000 (17:58 +0800)]
tcp: Ignore TCP_NOPUSH socketopt by default

For ill optimized programs which misuses this sockopt will cause
unpredicted length of network stalling, if the total sending size
is not TCP sending segment size aligned.

sysctl node net.inet.tcp.disable_nopush controls whether TCP_NOPUSH
will take effect or not

I am not going to fight agaist the stupid programs in the wild.

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

This is actually _not_ a bug on our side.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 17 May 2012 08:53:11 +0000 (01:53 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agohammer2 - Complete core hardlink support work
Matthew Dillon [Thu, 17 May 2012 08:36:51 +0000 (01:36 -0700)]
hammer2 - Complete core hardlink support work

This implements core hardlink support for hammer2.  In order to maintain the
strict bottom-up block modification hierarchy for the chains hardlinks must
be implemented with special forwarding inodes.

When a hardlink is created (nlinks 1->2) the file is replaced with a
forwarding entry and then recreated as a special hidden directory entry
indexed by its inode number at a higher directory level which is common
to all hardlinks to that file.

The forwarding entry simply specifies the inode number, thus our ability to
trivially snapshot a PFS is retained.

Since the real inode is indexed at a higher common directory locating the
real inode simply requires iterating parent directories until we find a
match.

* Default vfs.hammer2.hardlink_enable to 1 (enabled).

* Track and adjust nlinks.

* Implement OBJTYPE_HARDLINK forwarding directory entry, hidden inode,
  vnode->v_data inode replacement for the nlinks 1->2 case, and hidden
  inode deletion for the nlinks 1->0 case.

* The deconsolidation for the nlinks 2->1 case is not yet implemented.

11 years agokernel/profiling: Fix a kprintf format.
Sascha Wildner [Thu, 17 May 2012 08:41:29 +0000 (10:41 +0200)]
kernel/profiling: Fix a kprintf format.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 17 May 2012 08:36:17 +0000 (01:36 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agotcp: Make PAWS robust against segments reordering
Sepherosa Ziehau [Wed, 16 May 2012 08:53:37 +0000 (16:53 +0800)]
tcp: Make PAWS robust against segments reordering

This tends to prevent valid new segments from being dropped by the
reordered segments sent by the fast retransmission algorithm on the
sending side, i.e. the fast retransmitted segment w/ larger timestamp
arrives earlier than the previously sent new segments w/ smaller
timestamp, which causes the valid new segments being dropped.

11 years agohammer2 - Flesh out hardlink infrastructure
Matthew Dillon [Thu, 17 May 2012 04:19:00 +0000 (21:19 -0700)]
hammer2 - Flesh out hardlink infrastructure

* Create the API function skeletons which will be used to implement the
  hardlink support infrastructure.

* Add vfs.hammer2.hardlink_enable (default 0=disabled).  1=enable, -1=faked.
  This is mainly for debugging, hardlinks are not yet implemented as of this
  commit.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 17 May 2012 00:15:51 +0000 (17:15 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agotest/debug/fdpassing: Correct a typo.
Sascha Wildner [Wed, 16 May 2012 20:06:47 +0000 (22:06 +0200)]
test/debug/fdpassing: Correct a typo.

11 years agohammer2 - hookup getattr, setattr
Matthew Dillon [Wed, 16 May 2012 03:04:15 +0000 (20:04 -0700)]
hammer2 - hookup getattr, setattr

* Hook up most remaining fields for getattr and setattr, and also initial
  ownership and so forth for create.

* initialize and update the time on create, setattr, and write.

* kqueue handling for write.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Wed, 16 May 2012 02:27:39 +0000 (19:27 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agotcp: Use TAILQ for segments reassemble queue
Sepherosa Ziehau [Wed, 16 May 2012 01:15:28 +0000 (09:15 +0800)]
tcp: Use TAILQ for segments reassemble queue

So the last segment of the reassemble queue could be peeked w/ minimal cost

11 years agokgdb: Add TUI mode as an option
John Marino [Tue, 15 May 2012 21:50:11 +0000 (23:50 +0200)]
kgdb: Add TUI mode as an option

Now that -tui mode is fixed for gdb, let's allow kgdb to use it.  This
commit adds the -t (--tui-mode) option to kgdb to allow debugging core
files with gdb's Text User Interface terminal interface.

The -q (--quiet) option had to set when --tui-mode option is set due
to the initial verbosity destroying the curses window otherwise.

11 years agogdb: Fix gdb -tui mode
John Marino [Tue, 15 May 2012 20:56:24 +0000 (22:56 +0200)]
gdb: Fix gdb -tui mode

The gdbtui (aka gdb -tui) mode has been nonfunctional for a long time
due to the replacement of readline with libedit.  After speaking with
Cristos Zoulas, it was confirmed that libedit can't support gdbtui now
and is not envisioned to support it in the future.

The tui mode is fixed by building the readline library internally and
linking against that instead of libedit.

The README files were updated to reflected additional imported sources
for readline and the removal of libedit-caused local modications to
tui-io.c file.

11 years agoMerge branch 'vendor/GDB'
John Marino [Tue, 15 May 2012 22:29:55 +0000 (00:29 +0200)]
Merge branch 'vendor/GDB'

11 years agogdb vendor branch: Bring in additional source files
John Marino [Tue, 15 May 2012 19:15:22 +0000 (21:15 +0200)]
gdb vendor branch: Bring in additional source files

The tui mode of gdb will not function when the readline library is
replaced with libedit.  Bring in readline sources to build gdb
properly.  The readline library will be used internally to gdb only.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Tue, 15 May 2012 17:41:39 +0000 (10:41 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agopci: Update several bits for PCI Express 2.0
Sepherosa Ziehau [Tue, 15 May 2012 05:48:54 +0000 (13:48 +0800)]
pci: Update several bits for PCI Express 2.0

11 years agohammer2 - Add media dump command, improve help output
Matthew Dillon [Tue, 15 May 2012 05:40:10 +0000 (22:40 -0700)]
hammer2 - Add media dump command, improve help output

* Add 'hammer2 show <device>'.  This will dump the contents of the
  hammer2 filesystem structure on-media.

* Improve usage() output.

* Rename 'hammer2 debug <host>' to 'hammer2 shell <host>'.

11 years agohammer2 - last_tid renamed to mirror_tid in volume header
Matthew Dillon [Tue, 15 May 2012 05:39:10 +0000 (22:39 -0700)]
hammer2 - last_tid renamed to mirror_tid in volume header

* The volume header needs a discrete field to hold the highest-propagated
  mirror_tid value.

11 years agohammer2 - Implement modify_tid and mirror_tid
Matthew Dillon [Tue, 15 May 2012 05:36:32 +0000 (22:36 -0700)]
hammer2 - Implement modify_tid and mirror_tid

* Assign and propagate mirror_tid to the root on flush.

* Set modify_tid for direct modifications

* Code variable naming cleanup in hammer2_flush*() functions.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Tue, 15 May 2012 05:36:05 +0000 (22:36 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agopci: Support PCI Express Configuration Space memory-mapped access mechanism
Sepherosa Ziehau [Mon, 14 May 2012 09:13:17 +0000 (17:13 +0800)]
pci: Support PCI Express Configuration Space memory-mapped access mechanism

Also remove the outdated type 2 Configuration Space access mechanism;
it should never been seen on platforms w/ AMD64 capable CPUs.

Obtained-from: FreeBSD

11 years agopci: Introduce PCIE_REGMAX
Sepherosa Ziehau [Tue, 15 May 2012 04:58:20 +0000 (12:58 +0800)]
pci: Introduce PCIE_REGMAX

Obtained-from: FreeBSD

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Mon, 14 May 2012 21:35:16 +0000 (14:35 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agoUnbreak world (tic)
John Marino [Mon, 14 May 2012 16:11:51 +0000 (18:11 +0200)]
Unbreak world (tic)

The tic utility should be built with the ncursesw library, but that one
is not available on any system with more than 2 days since the last
build.  On those systems, the world will break pretty quickly.

The Makefile was updated to use the available ncurses library.  After
the release of DragonFly 3.2, the makefile on the master branch can
be updated to take the wide version of the ncurses library since we
only guarantee upwards compatibility for one release.

11 years agotic(1): Add man page for new tic utility
John Marino [Mon, 14 May 2012 13:57:57 +0000 (15:57 +0200)]
tic(1): Add man page for new tic utility

11 years agoterminfo: Add terminfo database creation to world build
John Marino [Mon, 14 May 2012 09:50:56 +0000 (11:50 +0200)]
terminfo: Add terminfo database creation to world build

1) add tic to bootstrap tools
2) pre-populate /usr/share/terminal subdirectories
3) Add share/terminfo subdir to share Makefile

11 years agoAdd share/terminfo: This constructs terminfo database
John Marino [Mon, 14 May 2012 09:44:45 +0000 (11:44 +0200)]
Add share/terminfo: This constructs terminfo database

This is not tied into buildworld yet, it requires /usr/bin/tic to be
set up as a bootstrap tool first.

11 years agoAdd /usr.bin/tic: terminfo entry-description compiler
John Marino [Mon, 14 May 2012 08:38:29 +0000 (10:38 +0200)]
Add /usr.bin/tic: terminfo entry-description compiler

The tic program is required to create the terminfo database.

11 years agoncurses: move USE_GETCAP, update README files
John Marino [Mon, 14 May 2012 07:38:53 +0000 (09:38 +0200)]
ncurses: move USE_GETCAP, update README files

The ncurses headers were generated with additional configuration switches
documented on README.DRAGONFLY.  One outcome is the USE_GETCAP should
be in the configuration header rather than in the Makefile, so that
was updated.

New files were imported to support building the terminfo database, and
the path for that will be /usr/share/terminfo.  Accordingly, the man
page and configuration header have been updated.

11 years agoMerge branch 'vendor/NCURSES'
John Marino [Mon, 14 May 2012 10:24:19 +0000 (12:24 +0200)]
Merge branch 'vendor/NCURSES'

11 years agoncurses vendor branch: Bring in additional source files
John Marino [Mon, 14 May 2012 07:20:26 +0000 (09:20 +0200)]
ncurses vendor branch: Bring in additional source files

In order to support the building of the terminfo database, additional
source files from the ncurses 5.9 tarball are needed.

11 years agoiwn: Add Intel(R) Centrino Wireless-N 100
Sepherosa Ziehau [Mon, 14 May 2012 08:26:24 +0000 (16:26 +0800)]
iwn: Add Intel(R) Centrino Wireless-N 100

Submitted-by: Francis GUDIN
DragonFly-bug: http://bugs.dragonflybsd.org/issues/2366

11 years agoUpdate files for OpenSSL-1.0.1c import.
Peter Avalos [Sun, 13 May 2012 19:55:08 +0000 (12:55 -0700)]
Update files for OpenSSL-1.0.1c import.

11 years agoMerge branch 'vendor/OPENSSL'
Peter Avalos [Sun, 13 May 2012 19:52:19 +0000 (12:52 -0700)]
Merge branch 'vendor/OPENSSL'

11 years agoImport OpenSSL-1.0.1c.
Peter Avalos [Sun, 13 May 2012 19:47:02 +0000 (12:47 -0700)]
Import OpenSSL-1.0.1c.

  o Fix TLS/DTLS record length checking bug CVE-2012-2333

11 years agoarcmsr(4): Disable MSI support on the 1880 models.
Sascha Wildner [Sun, 13 May 2012 13:40:53 +0000 (15:40 +0200)]
arcmsr(4): Disable MSI support on the 1880 models.

There is definitely MSI related breakage here (resulting in ccb
command timeout issues). It was verified with an ARC-1880i that
was kindly provided by ftigeot.

On the other hand, my ARC-1210 works like a charm using MSI.

Reported-by: ftigeot
11 years agoncurses: Add wide-character support
John Marino [Sun, 13 May 2012 10:09:32 +0000 (12:09 +0200)]
ncurses: Add wide-character support

The man pages already indicated wide-character support, but the
libraries weren't properly implemented.  Also removed unneeded
libmytinfo.  It was an alias for libncurses and four makefiles
referenced both.

11 years agohammer2 - Implement aes_256_cbc session encryption
Matthew Dillon [Sun, 13 May 2012 00:43:17 +0000 (17:43 -0700)]
hammer2 - Implement aes_256_cbc session encryption

* The AES session key and initial iv[] are transmitted in the public key
  exchange.

* The actual AES session key and initial iv[] is the data received XOR'd
  with the data sent, so if the public key exchange is broken (even if
  the verifier succeeds), the rest of the session will die a horrible
  death.

* We use aes_256_cbc and in addition to the iv[] being adjusted by the
  data in-flight we also inject some random data in each message header
  to mix iv[] up even more than it would be normally.

* We also check the message sequence number, which is embedded in the
  random data (the raw msg header's salt field), though the iv[] should
  catch any replays.

* NOTE: Verifier is still weak, but the session key and iv[] exchange
  is very strong.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Sun, 13 May 2012 00:43:02 +0000 (17:43 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agotermcap: Adjust for new ncurses
John Marino [Sun, 13 May 2012 00:33:41 +0000 (02:33 +0200)]
termcap: Adjust for new ncurses

The new ncurses 5.9 library is emitting warnings during the scanning of some of the terminal
entries, which require updates to silence.

Terminal entry updates provided by:
jaydg
ftigeot

11 years agoncurses: Block warning about "older tic versions"
John Marino [Sun, 13 May 2012 00:20:20 +0000 (02:20 +0200)]
ncurses: Block warning about "older tic versions"

The /etc/termcap file should have a space between the last "|" character and the alias per
format rules.  ncurses can still interpret the alias of the termcap entries correctly, but by
default will emit the warning, "older tic versions may treat the description field as an alias"
whenver it encounters such an entry (e.g. the common cons25).

Rather than update hundreds of entries, just silence the warning.  This is what FreeBSD does.

11 years ago/usr/Makefile: Adjust for our sys-src archive now coming bzip2'd.
Sascha Wildner [Sat, 12 May 2012 22:52:58 +0000 (00:52 +0200)]
/usr/Makefile: Adjust for our sys-src archive now coming bzip2'd.

Reported-by: Francis Gudin <fgudin@nerim.net>
11 years agore(4): Add support for the 8105E found in the Acer Aspire One D257.
Sascha Wildner [Sat, 12 May 2012 22:29:53 +0000 (00:29 +0200)]
re(4): Add support for the 8105E found in the Acer Aspire One D257.

Submitted-by: Francis Gudin <fgudin@nerim.net>
11 years agoncurses: Fix ncurses-caused segfault
John Marino [Sat, 12 May 2012 22:29:14 +0000 (00:29 +0200)]
ncurses: Fix ncurses-caused segfault

11 years agoncurses: Fix bad paths, convert 3X to 3 on man pages
John Marino [Sat, 12 May 2012 20:35:20 +0000 (22:35 +0200)]
ncurses: Fix bad paths, convert 3X to 3 on man pages

11 years agomount_ufs.8: Change manpage title and name.
Sascha Wildner [Sat, 12 May 2012 18:51:46 +0000 (20:51 +0200)]
mount_ufs.8: Change manpage title and name.

11 years agotermcap: Sync with FreeBSD
John Marino [Sat, 12 May 2012 15:20:54 +0000 (17:20 +0200)]
termcap: Sync with FreeBSD

FreeBSD removed map3270 7 years ago...
The last termcap sync was 3 DEC 2008

11 years agolibgmp: Update from version 5.0.2 to 5.0.5
John Marino [Sat, 12 May 2012 08:18:42 +0000 (10:18 +0200)]
libgmp: Update from version 5.0.2 to 5.0.5

===============================
 CHANGES SINCE PREVIOUS UPDATE
===============================
Changes between GMP version 5.0.2 and 5.0.3
[BUGS FIXED]
* A few minor bugs related to portability fixed.
* A slight timing leak of the powm_sec functions have been sealed.
  (This leak could possibly be used to extract the most significant
  few bits of the exponent.  "Few" here means at most 10.)
* The mpz_nextprime function now runs a safer number of pseudo-random
  prime tests.
* A bug in division code possibly causing incorrect computation was
  fixed.
[SPEEDUPS]
* None, except indirectly through recognition of new CPUs, and through
  better tuning parameters.
[FEATURES]
* New CPUs recognised.
* IBM S/390 are now supported in both 31/32-bit and 64-bit mode.  (We
  have not been able to fully test this on any multilib machine, since
  IBM expired our guest account a few days before our release.)

Changes between GMP version 5.0.3 and 5.0.4
[BUGS FIXED]
* Thresholds in mpn_powm_sec for both fat and non-fat builds are now
  used safely, plugging a one-word buffer overrun introduced in the
  5.0.3 release (for non-fat) and a multi-word buffer overrun that
  existed since 5.0 (for fat).  (We have not been able to provoke malign
  stack smashing in any of the ~100 configurations explored by the GMP
  nightly builds, but the bug should be assumed to be exploitable.)
* Two bugs in multiplication code causing incorrect computation with
  extremely low probability have been fixed.
* A bug in the test suite causing buffer overruns during "make check",
  sometimes leading to subsequent malloc crashes, has been fixed.
* Two bugs in the gcd code have been fixed.  They could lead to incorrect
  results, but for uniformly distributed random operands, the likelihood
  for that is infinitesimally small.  (There was also a third bug, but
  that was an incorrect ASSERT, which furthermore was not enabled by
  default.)
* A bug affecting 32-bit PowerPC division has been fixed.  The bug caused
  miscomputation for certain divisors in the range 2^32 ... 2^64-1
  (about 1 in 2^30 of these).
[SPEEDUPS]
* None, except indirectly through recognition of new CPUs, and through
  better tuning parameters.
[FEATURES]
* Some more tests added to the self-check suite.
* The AMD "Bulldozer" CPU is now recognised.

Changes between GMP version 5.0.4 and 5.0.5
[BUGS FIXED]
* A bug causing AMD 11h processors to be treated like AMD 10h has been
  fixed.  The 11h processors do not correctly handle all 10h (aka K10)
  instructions, and GMP's use of these instructions results in major
  miscomputations (not as one would have hoped CPU traps of some
  'illegal instruction' sort).
* A bug affecting recent Intel Sandy Bridge CPUs resulting in
  configuration failures has been fixed,
[FEATURES]
* A couple of tests added to the self-check suite.

11 years agogmplib: Update README files after vendor branch merge
John Marino [Sat, 12 May 2012 07:23:52 +0000 (09:23 +0200)]
gmplib: Update README files after vendor branch merge

11 years agoMerge branch 'vendor/GMP'
John Marino [Sat, 12 May 2012 10:57:51 +0000 (12:57 +0200)]
Merge branch 'vendor/GMP'

11 years agoUpgrade GMP from 5.0.2 to 5.0.5 on the vendor branch vendor/GMP
John Marino [Sat, 12 May 2012 07:22:30 +0000 (09:22 +0200)]
Upgrade GMP from 5.0.2 to 5.0.5 on the vendor branch

11 years agoelf_common.h: Define EM_ALPHA
John Marino [Sat, 12 May 2012 09:47:14 +0000 (11:47 +0200)]
elf_common.h: Define EM_ALPHA

This commit restores the EM_ALPHA definition that was added on
13 DEC 2011 and later removed during the partial sync with
binutils 2.22 elf headers.

It is required for building OpenJDK.

11 years agohammer2 - Crypto handshake work for message stream
Matthew Dillon [Sat, 12 May 2012 07:43:26 +0000 (00:43 -0700)]
hammer2 - Crypto handshake work for message stream

* 'hammer2 debug' can now take a destination host argument (and will
  default to localhost).  This is the debug shell connection.

* Add 'hammer2 rsainit' to initialize hammer2's keys /etc/hammer2/rsa.*

* Change the 'hammer2 node' directive to 'hammer2 service'.

* Flesh out the initial public key exchange handshake.  Currently the
  handshake consists of a symmetric 512 byte write and 512 byte read.
  The data is encrypted with our private key and the remote end's public
  key.

  Currently a very simple verifier has been constructed, but we will
  ultimately want to use sha or md5 or something like that for the
  verifier.

  Since I am doing a double-encryption here the first stage encrypt
  has to check that the result does not exceed the modulus (typically
  bit 7 of the first byte must be zero).  If it does we increment
  a 32 bit quantity in our pad*[] area and retry until we get a good
  result.

* The exchange is used to calculate the AES session key.  Session
  encryption is not yet implemented.  A random session key is sent
  by both ends.  The actual session key will be the XOR of the one
  we send and the one we receive.

* When a connection is accepted the remote end's public key is looked
  up in /etc/hammer2/remotes/<IP>.pub.  If this file does not exist
  then the connection is not allowed.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Sat, 12 May 2012 01:16:49 +0000 (18:16 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agolibncurses: Upgrade from version 5.7 to 5.9
John Marino [Fri, 11 May 2012 20:39:40 +0000 (22:39 +0200)]
libncurses: Upgrade from version 5.7 to 5.9

For 1100 lines of changes since the release of version 5.7, see
/usr/src/contrib/ncurses/NEWS

11 years agoncurses: Restore DragonFly README files
John Marino [Fri, 11 May 2012 21:23:05 +0000 (23:23 +0200)]
ncurses: Restore DragonFly README files

These two README files were placed on the vendor branch, and were
removed during the last source update.  The replacement README
files are being placed on the master branch.

11 years agoMerge branch 'vendor/NCURSES'
John Marino [Fri, 11 May 2012 21:22:28 +0000 (23:22 +0200)]
Merge branch 'vendor/NCURSES'

11 years agoUpdate ncurses from version 5.7 to 5.9 on vendor branch
John Marino [Fri, 11 May 2012 17:17:25 +0000 (19:17 +0200)]
Update ncurses from version 5.7 to 5.9 on vendor branch

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 11 May 2012 15:15:57 +0000 (08:15 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agozlib: Upgrade from version 1.2.5 to version 1.2.7
John Marino [Fri, 11 May 2012 12:52:27 +0000 (14:52 +0200)]
zlib: Upgrade from version 1.2.5 to version 1.2.7

===========================
 Changes since last update
===========================

Changes in 1.2.5.1 (10 Sep 2011)
- Update FAQ entry on shared builds (#13)
- Avoid symbolic argument to chmod in Makefile.in
- Fix bug and add consts in contrib/puff [Oberhumer]
- Update contrib/puff/zeros.raw test file to have all block types
- Add full coverage test for puff in contrib/puff/Makefile
- Fix static-only-build install in Makefile.in
- Fix bug in unzGetCurrentFileInfo() in contrib/minizip [Kuno]
- Add libz.a dependency to shared in Makefile.in for parallel builds
- Spell out "number" (instead of "nb") in zlib.h for total_in, total_out
- Replace $(...) with `...` in configure for non-bash sh [Bowler]
- Add darwin* to Darwin* and solaris* to SunOS\ 5* in configure [Groffen]
- Add solaris* to Linux* in configure to allow gcc use [Groffen]
- Add *bsd* to Linux* case in configure [Bar-Lev]
- Add inffast.obj to dependencies in win32/Makefile.msc
- Correct spelling error in deflate.h [Kohler]
- Change libzdll.a again to libz.dll.a (!) in win32/Makefile.gcc
- Add test to configure for GNU C looking for gcc in output of $cc -v
- Add zlib.pc generation to win32/Makefile.gcc [Weigelt]
- Fix bug in zlib.h for _FILE_OFFSET_BITS set and _LARGEFILE64_SOURCE not
- Add comment in zlib.h that adler32_combine with len2 < 0 makes no sense
- Make NO_DIVIDE option in adler32.c much faster (thanks to John Reiser)
- Make stronger test in zconf.h to include unistd.h for LFS
- Apply Darwin patches for 64-bit file offsets to contrib/minizip [Slack]
- Fix zlib.h LFS support when Z_PREFIX used
- Add updated as400 support (removed from old) [Monnerat]
- Avoid deflate sensitivity to volatile input data
- Avoid division in adler32_combine for NO_DIVIDE
- Clarify the use of Z_FINISH with deflateBound() amount of space
- Set binary for output file in puff.c
- Use u4 type for crc_table to avoid conversion warnings
- Apply casts in zlib.h to avoid conversion warnings
- Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller]
- Improve inflateSync() documentation to note indeterminancy
- Add deflatePending() function to return the amount of pending output
- Correct the spelling of "specification" in FAQ [Randers-Pehrson]
- Add a check in configure for stdarg.h, use for gzprintf()
- Check that pointers fit in ints when gzprint() compiled old style
- Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler]
- Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt]
- Add debug records in assmebler code [Londer]
- Update RFC references to use http://tools.ietf.org/html/... [Li]
- Add --archs option, use of libtool to configure for Mac OS X [Borstel]

Changes in 1.2.5.2 (17 Dec 2011)
- fix ld error: unable to find version dependency 'ZLIB_1.2.5'
- use relative symlinks for shared libs
- Avoid searching past window for Z_RLE strategy
- Assure that high-water mark initialization is always applied in deflate
- Add assertions to fill_window() in deflate.c to match comments
- Update python link in README
- Correct spelling error in gzread.c
- Fix bug in gzgets() for a concatenated empty gzip stream
- Correct error in comment for gz_make()
- Change gzread() and related to ignore junk after gzip streams
- Allow gzread() and related to continue after gzclearerr()
- Allow gzrewind() and gzseek() after a premature end-of-file
- Simplify gzseek() now that raw after gzip is ignored
- Change gzgetc() to a macro for speed (~40% speedup in testing)
- Fix gzclose() to return the actual error last encountered
- Always add large file support for windows
- Include zconf.h for windows large file support
- Include zconf.h.cmakein for windows large file support
- Update zconf.h.cmakein on make distclean
- Merge vestigial vsnprintf determination from zutil.h to gzguts.h
- Clarify how gzopen() appends in zlib.h comments
- Correct documentation of gzdirect() since junk at end now ignored
- Add a transparent write mode to gzopen() when 'T' is in the mode
- Update python link in zlib man page
- Get inffixed.h and MAKEFIXED result to match
- Add a ./config --solo option to make zlib subset with no libary use
- Add undocumented inflateResetKeep() function for CAB file decoding
- Add --cover option to ./configure for gcc coverage testing
- Add #define ZLIB_CONST option to use const in the z_stream interface
- Add comment to gzdopen() in zlib.h to use dup() when using fileno()
- Note behavior of uncompress() to provide as much data as it can
- Add files in contrib/minizip to aid in building libminizip
- Split off AR options in Makefile.in and configure
- Change ON macro to Z_ARG to avoid application conflicts
- Facilitate compilation with Borland C++ for pragmas and vsnprintf
- Include io.h for Turbo C / Borland C++
- Move example.c and minigzip.c to test/
- Simplify incomplete code table filling in inflate_table()
- Remove code from inflate.c and infback.c that is impossible to execute
- Test the inflate code with full coverage
- Allow deflateSetDictionary, inflateSetDictionary at any time (in raw)
- Add deflateResetKeep and fix inflateResetKeep to retain dictionary
- Fix gzwrite.c to accommodate reduced memory zlib compilation
- Have inflate() with Z_FINISH avoid the allocation of a window
- Do not set strm->adler when doing raw inflate
- Fix gzeof() to behave just like feof() when read is not past end of file
- Fix bug in gzread.c when end-of-file is reached
- Avoid use of Z_BUF_ERROR in gz* functions except for premature EOF
- Document gzread() capability to read concurrently written files
- Remove hard-coding of resource compiler in CMakeLists.txt [Blammo]

Changes in 1.2.5.3 (15 Jan 2012)
- Restore gzgetc function for binary compatibility
- Do not use _lseeki64 under Borland C++ [Truta]
- Update win32/Makefile.msc to build test/*.c [Truta]
- Remove old/visualc6 given CMakefile and other alternatives
- Update AS400 build files and documentation [Monnerat]
- Update win32/Makefile.gcc to build test/*.c [Truta]
- Permit stronger flushes after Z_BLOCK flushes
- Avoid extraneous empty blocks when doing empty flushes
- Permit Z_NULL arguments to deflatePending
- Allow deflatePrime() to insert bits in the middle of a stream
- Remove second empty static block for Z_PARTIAL_FLUSH
- Write out all of the available bits when using Z_BLOCK
- Insert the first two strings in the hash table after a flush

Changes in 1.2.6 (29 Jan 2012)
- Update the Pascal interface in contrib/pascal
- Fix function numbers for gzgetc_ in zlibvc.def files
- Fix configure.ac for contrib/minizip [Schiffer]
- Fix large-entry detection in minizip on 64-bit systems [Schiffer]
- Have ./configure use the compiler return code for error indication
- Fix CMakeLists.txt for cross compilation [McClure]
- Fix contrib/minizip/zip.c for 64-bit architectures [Dalsnes]
- Fix compilation of contrib/minizip on FreeBSD [Marquez]
- Correct suggested usages in win32/Makefile.msc [Shachar, Horvath]
- Include io.h for Turbo C / Borland C on all platforms [Truta]
- Make version explicit in contrib/minizip/configure.ac [Bosmans]
- Avoid warning for no encryption in contrib/minizip/zip.c [Vollant]
- Minor cleanup up contrib/minizip/unzip.c [Vollant]
- Fix bug when compiling minizip with C++ [Vollant]
- Protect for long name and extra fields in contrib/minizip [Vollant]
- Avoid some warnings in contrib/minizip [Vollant]
- Add -I../.. -L../.. to CFLAGS for minizip and miniunzip
- Add missing libs to minizip linker command
- Add support for VPATH builds in contrib/minizip
- Add an --enable-demos option to contrib/minizip/configure
- Add the generation of configure.log by ./configure
- Exit when required parameters not provided to win32/Makefile.gcc
- Have gzputc return the character written instead of the argument
- Use the -m option on ldconfig for BSD systems [Tobias]
- Correct in zlib.map when deflateResetKeep was added

Changes in 1.2.6.1 (12 Feb 2012)
- Avoid the use of the Objective-C reserved name "id"
- Include io.h in gzguts.h for Microsoft compilers
- Fix problem with ./configure --prefix and gzgetc macro
- Include gz_header definition when compiling zlib solo
- Put gzflags() functionality back in zutil.c
- Avoid library header include in crc32.c for Z_SOLO
- Use name in GCC_CLASSIC as C compiler for coverage testing, if set
- Minor cleanup in contrib/minizip/zip.c [Vollant]
- Update make_vms.com [Zinser]
- Remove unnecessary gzgetc_ function
- Use optimized byte swap operations for Microsoft and GNU [Snyder]
- Fix minor typo in zlib.h comments [Rzesniowiecki]

Changes in 1.2.7 (2 May 2012)
- Replace use of memmove() with a simple copy for portability
- Test for existence of strerror
- Restore gzgetc_ for backward compatibility with 1.2.6
- Fix build with non-GNU make on Solaris
- Require gcc 4.0 or later on Mac OS X to use the hidden attribute
- Include unistd.h for Watcom C
- Use __WATCOMC__ instead of __WATCOM__
- Do not use the visibility attribute if NO_VIZ defined
- Improve the detection of no hidden visibility attribute
- Avoid using __int64 for gcc or solo compilation
- Cast to char * in gzprintf to avoid warnings [Zinser]
- Fix make_vms.com for VAX [Zinser]
- Don't use library or built-in byte swaps
- Simplify test and use of gcc hidden attribute
- Fix bug in gzclose_w() when gzwrite() fails to allocate memory
- Add "x" (O_EXCL) and "e" (O_CLOEXEC) modes support to gzopen()
- Fix bug in test/minigzip.c for configure --solo
- Fix contrib/vstudio project link errors [Mohanathas]
- Add ability to choose the builder in make_vms.com [Schweda]
- Add DESTDIR support to mingw32 win32/Makefile.gcc
- Fix comments in win32/Makefile.gcc for proper usage
- Allow overriding the default install locations for cmake
- Generate and install the pkg-config file with cmake
- Build both a static and a shared version of zlib with cmake
- Include version symbols for cmake builds
- If using cmake with MSVC, add the source directory to the includes
- Remove unneeded EXTRA_CFLAGS from win32/Makefile.gcc [Truta]
- Move obsolete emx makefile to old [Truta]
- Allow the use of -Wundef when compiling or using zlib
- Avoid the use of the -u option with mktemp
- Improve inflate() documentation on the use of Z_FINISH
- Recognize clang as gcc
- Add gzopen_w() in Windows for wide character path names
- Rename zconf.h in CMakeLists.txt to move it out of the way
- Add source directory in CMakeLists.txt for building examples
- Look in build directory for zlib.pc in CMakeLists.txt
- Remove gzflags from zlibvc.def in vc9 and vc10
- Fix contrib/minizip compilation in the MinGW environment
- Update ./configure for Solaris, support --64 [Mooney]
- Remove -R. from Solaris shared build (possible security issue)
- Avoid race condition for parallel make (-j) running example
- Fix type mismatch between get_crc_table() and crc_table
- Fix parsing of version with "-" in CMakeLists.txt [Snider, Ziegler]
- Fix the path to zlib.map in CMakeLists.txt
- Force the native libtool in Mac OS X to avoid GNU libtool [Beebe]
- Add instructions to win32/Makefile.gcc for shared install [Torri]

11 years agozlib: Add DragonFly README files
John Marino [Fri, 11 May 2012 11:46:08 +0000 (13:46 +0200)]
zlib: Add DragonFly README files

The README.DELETED used to be located on the vendor branch.
It was deleted there, updated, and placed on the master branch instead.

11 years agoMerge branch 'vendor/ZLIB'
John Marino [Fri, 11 May 2012 14:41:18 +0000 (16:41 +0200)]
Merge branch 'vendor/ZLIB'

11 years agozlib: Remove zconf.h
John Marino [Fri, 11 May 2012 12:07:06 +0000 (14:07 +0200)]
zlib: Remove zconf.h

1) To facility merging the zlib vendor branch
2) zconf.h is generated, so it will move to the makefile framework

11 years agoUpdate zlib from version 1.2.5 to 1.2.7 on vendor branch
John Marino [Fri, 11 May 2012 11:26:44 +0000 (13:26 +0200)]
Update zlib from version 1.2.5 to 1.2.7 on vendor branch

11 years agogdb: Update makefile framework for version 7.4.1 upgrade
John Marino [Fri, 11 May 2012 06:33:02 +0000 (08:33 +0200)]
gdb: Update makefile framework for version 7.4.1 upgrade

Note that gdbtui is no longer a separate executable.  It has been
deprecated by GNU GDB and will disappear completely on GDB 7.5
It has been changed to a wrapper that calls "gdb -tui"

11 years agogdb: Update DragonFly README files
John Marino [Fri, 11 May 2012 06:13:09 +0000 (08:13 +0200)]
gdb: Update DragonFly README files

11 years agogdb: Adjust tui to use libedit rather than readline
John Marino [Fri, 11 May 2012 07:53:38 +0000 (09:53 +0200)]
gdb: Adjust tui to use libedit rather than readline

11 years agogdb: Reapply modifications post-vendor branch merge
John Marino [Fri, 11 May 2012 06:09:03 +0000 (08:09 +0200)]
gdb: Reapply modifications post-vendor branch merge

11 years agoMerge branch 'vendor/GDB'
John Marino [Fri, 11 May 2012 10:39:47 +0000 (12:39 +0200)]
Merge branch 'vendor/GDB'

11 years agogdb: Temporarily revert modifications for branch merge
John Marino [Fri, 11 May 2012 06:03:31 +0000 (08:03 +0200)]
gdb: Temporarily revert modifications for branch merge

These four files don't merge with the vendor branch cleanly, so
the plan is to:
1) revert
2) merge vendor branch
3) reapply update versions

11 years agoUpgrade GDB from 7.3 to 7.4.1 on the vendor branch
John Marino [Fri, 11 May 2012 05:55:24 +0000 (07:55 +0200)]
Upgrade GDB from 7.3 to 7.4.1 on the vendor branch

11 years agotcp: Properly count duplicated ACKs
Sepherosa Ziehau [Fri, 11 May 2012 02:00:18 +0000 (10:00 +0800)]
tcp: Properly count duplicated ACKs

11 years agotcp: Add rxt_flags for spurious retransmit detection
Sepherosa Ziehau [Thu, 10 May 2012 07:45:29 +0000 (15:45 +0800)]
tcp: Add rxt_flags for spurious retransmit detection

This saves another 5 bits in the t_flags

11 years agotcp: Add sack_flags for SACK related operations
Sepherosa Ziehau [Thu, 10 May 2012 07:30:58 +0000 (15:30 +0800)]
tcp: Add sack_flags for SACK related operations

This saves us 4 bits in the crowded t_flags

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 11 May 2012 05:21:02 +0000 (22:21 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agomount - Split mount into mount_ufs, auto-detect fstype from disklabel
Matthew Dillon [Fri, 11 May 2012 05:20:33 +0000 (22:20 -0700)]
mount - Split mount into mount_ufs, auto-detect fstype from disklabel

* Followup minor adjustment for compile error.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 11 May 2012 05:19:21 +0000 (22:19 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agomount - Split mount into mount_ufs, auto-detect fstype from disklabel
Matthew Dillon [Fri, 11 May 2012 05:12:28 +0000 (22:12 -0700)]
mount - Split mount into mount_ufs, auto-detect fstype from disklabel

* Move the compiled-in ufs mount code from mount to a new utility called
  mount_ufs.

* When mount determines the filesystem type is ufs it now exec's mount_ufs
  instead of calling the built-in ufs code.

* When mounting a disklabeled device and the fstype is not specified
  mount will attempt to figure out the fstype from the disklabel.

  Devices matching acd%d and cd%d will default to the 'cd9660' fstype.

  It defaults to ufs if it cannot figure it out (as before).

* If your filesystems are properly labeled this allows you to specify
  the mount generically as in this example:

      mount /dev/da0s1d /mnt

  And mount will exec mount_ufs or mount_hammer (etc...) as appropriate.

* NOTE! mount cannot currently auto-detect msdosfs or extract the DOS
  slice type.  It would be cool if it were extended further to do this
  as well.  Currently it only understands DragonFly disklabels.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 11 May 2012 00:45:41 +0000 (17:45 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agotmpfs - Remove size cap
Matthew Dillon [Fri, 11 May 2012 00:20:06 +0000 (17:20 -0700)]
tmpfs - Remove size cap

tmpfs normally caps manually requested filesystem sizes to available
memory and swap.  However, this messes up size specifications in /etc/fstab
during boot which mount tmpfs prior to turning on swap.

For now just disable it.

11 years agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 10 May 2012 22:31:52 +0000 (15:31 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

11 years agolibedit: Upgrade NetBSD version 2011-03-11
John Marino [Thu, 10 May 2012 05:03:28 +0000 (07:03 +0200)]
libedit: Upgrade NetBSD version 2011-03-11

As NetBSD has properly packaged regular releases of their libedit
library (readline replacement), a new vendor branch has been created
for it.  Libedit was last synchronized with NetBSD 4 years ago, to
the week.

During that time, a new function was added to the DragonFly version
that still doesn't exist on NetBSD.  It is necessary to support GDB
7.x, so the addition of rl_completion_word_break_hook function has
been carried over to this update.

11 years agonew libedit: Add DragonFly README files to contrib
John Marino [Thu, 10 May 2012 20:28:57 +0000 (22:28 +0200)]
new libedit: Add DragonFly README files to contrib

11 years agonew libedit: add rl_completion_word_break_hook functionality
John Marino [Thu, 10 May 2012 00:45:00 +0000 (02:45 +0200)]
new libedit: add rl_completion_word_break_hook functionality

Recreates commit:
e2624a299cd1858e0a04301d42b946851c336c37

"This follows roughly what is described in the readline manual.
 rl_completion_word_break_hook is needed by gdb-7."

11 years agonew libedit: Fix mismatch between 0 and pointers
John Marino [Thu, 10 May 2012 00:26:13 +0000 (02:26 +0200)]
new libedit: Fix mismatch between 0 and pointers

Partially recreates commit:
678e8cc6002ecd3a79cdae95ac8b454437219fc5

"For better readability, don't compare pointers with 0 or assign 0
 to them. Use NULL instead."

11 years agonew libedit: Silence -Wold-style-definition
John Marino [Thu, 10 May 2012 00:19:06 +0000 (02:19 +0200)]
new libedit: Silence -Wold-style-definition

Partially recreates commit:
9a92bb4ce6ff1ff9b84161d1e22abd74e726c553

11 years agonew libedit: Local modifications to enable build
John Marino [Thu, 10 May 2012 20:19:31 +0000 (22:19 +0200)]
new libedit: Local modifications to enable build

The unmodified libedit source doesn't build on DragonFly without
minor modifications to three files.

11 years agoMerge branch 'vendor/LIBEDIT'
John Marino [Thu, 10 May 2012 21:36:29 +0000 (23:36 +0200)]
Merge branch 'vendor/LIBEDIT'

11 years agoImport NetBSD's LibEdit version 2012-03-11 on vendor branch
John Marino [Thu, 10 May 2012 21:34:55 +0000 (23:34 +0200)]
Import NetBSD's LibEdit version 2012-03-11 on vendor branch

11 years agoRemove some AppleTalk remains.
Sascha Wildner [Thu, 10 May 2012 18:52:36 +0000 (20:52 +0200)]
Remove some AppleTalk remains.

11 years agonetstat: Move SACK rescue stats to the "packet sent" block
Sepherosa Ziehau [Thu, 10 May 2012 05:14:39 +0000 (13:14 +0800)]
netstat: Move SACK rescue stats to the "packet sent" block

11 years agotcp: Adjust early rexmit start condition for the adaptive DupThresh algorithm
Sepherosa Ziehau [Thu, 10 May 2012 05:09:58 +0000 (13:09 +0800)]
tcp: Adjust early rexmit start condition for the adaptive DupThresh algorithm

11 years agoacpi_asus(4): Bring in a small fix from FreeBSD.
Sascha Wildner [Wed, 9 May 2012 21:17:02 +0000 (23:17 +0200)]
acpi_asus(4): Bring in a small fix from FreeBSD.

Prefer correct and simpler backlight control methods for ASUS G2K laptop.

Taken-from: FreeBSD

11 years agotcp/sack: Don't reduce retransmit threshold as recommended by RFC3517bis
Sepherosa Ziehau [Wed, 9 May 2012 08:48:15 +0000 (16:48 +0800)]
tcp/sack: Don't reduce retransmit threshold as recommended by RFC3517bis

- Don't reduce byte threshold in IsLost()
- Don't retransmit if IsLost(tcpcb.snd_una) is true

They cause spurious retransmits.

Add sysctl node net.inet.tcp.rfc3517bis_rxt to enable the RFC3517bis
recommended retransmit threshold reduction.  It is disabled by default.

11 years agotcp/sack: Implement RFC3517bis
Sepherosa Ziehau [Tue, 8 May 2012 09:56:00 +0000 (17:56 +0800)]
tcp/sack: Implement RFC3517bis

http://tools.ietf.org/html/draft-ietf-tcpm-3517bis-02, which will
be become "Standards Track" soon.

net.inet.tcp.rfc3517bis sysctl node is added to enable this update.
It is off by default.

11 years agogrep: Restore modification for HAMMER FS
John Marino [Tue, 8 May 2012 16:25:35 +0000 (18:25 +0200)]
grep: Restore modification for HAMMER FS

The first version of this modification was created by Matthias Schmidt.
Unmodified, grep used on a HAMMER filesystem will emit "Invalid argument"
when scanning directories because HAMMER doesn't treat them as files.

Unmodified behavior:
> cd /usr/src
> grep test: *
Makefile:test:
grep: cat: Invalid argument
[...]

After modification:
> cd /usr/src
> grep test: *
Makefile:test:

The modification was removed because it didn't merge simply with the
grep upgrade from 2.9 to 2.12.  Now that the merge is complete, the
new version of the modification is applied to restore the correct
behavior of grep on the HAMMER filesystem.