Commit Graph

143786 Commits

Author SHA1 Message Date
Robert Watson
5e48a30d2e Unlike with struct protosw, several instances of struct ip6protosw
did not use C99-style sparse structure initialization, so remove
NULL assignments for now-removed pr_usrreq function pointers.

Reported by:	Chris Ruiz <yr.retarded at gmail.com>
2009-01-04 21:53:42 +00:00
Robert Watson
cba318dc12 struct ip6protosw is a copy of struct protosw, so remove pr_usrreq there
to reflect removal from struct protosw.

Spotted by:	ed
2009-01-04 21:13:51 +00:00
Doug Barton
e2af94387b Instead of using obj and all targets which are not cross-build aware,
use _obj and everything which are.

Submitted by:	ru
2009-01-04 20:59:23 +00:00
Robert Watson
f38d120723 Remove reference to pr_ousrreq from domain(9) since it's now gone from
struct protosw.

Submitted by:	bz
MFC after:	3 weeks
2009-01-04 19:23:44 +00:00
Ed Schouten
fdef61da21 Remove Giant locking from domains list.
During boot, the domain list is locked with Giant. It is not possible to
register any protocols after the system has booted, so the lock is only
used to protect insertion of entries.

There is already a mutex in uipc_domain.c called dom_mtx. Use this mutex
to lock the list, instead of using Giant. It won't matter anything with
respect to performance, but we'll never get rid of Giant if we don't
remove from places where we don't need it.

Approved by:	rwatson
MFC after:	3 weeks
2009-01-04 19:22:53 +00:00
Robert Watson
192a6120fc Remove two further uses (debugging and NULLing) of pr_ousrreq, missed due
to svn commit in the wrong directory.

Spotted by:	bz
2009-01-04 19:16:36 +00:00
Robert Watson
15d657fda7 Remove now-unused pr_ousrreq from struct protosw. It may not have been
used since the last millenia.
2009-01-04 19:03:42 +00:00
Konstantin Belousov
178e776169 Do not incorrectly add the low 5 bits of the offset to the resulting
position of the found zero bit.

Submitted by:	Jaakko Heinonen <jh saunalahti fi>
MFC after:	2 weeks
2009-01-04 15:56:49 +00:00
Stanislav Sedov
63a07fdbc0 - Improve wording.
Approved by:	kib (mentor)
MFC after:	1 week
2009-01-04 15:49:30 +00:00
Stanislav Sedov
b1763c4704 - Improve wording.
- ae(4) first appeared in 7.1. Reflect this.

Approved by:	kib (mentor)
MFC after:	1 week
2009-01-04 15:48:38 +00:00
Daniel Gerzo
c419baec28 - grammar and language fixes
- hard sentence breaks
- trim EXIT STATUS section and move it to DIAGNOSTICS as well as use .Er
  macro
- sort SEE ALSO

MFC after:	7 days
2009-01-04 15:41:01 +00:00
Bjoern A. Zeeb
eb76156548 Back out r186615; the sanitizing of the pointers in the error case
is not needed and seems that it will not be needed either.

Pointy hat:	mine, mine, mine and not pho's
2009-01-04 12:18:18 +00:00
Ivan Voras
2b67c28a09 Several significant updates:
* Better wording of sections dealing with physical storage
* A new section on assumptions gvirstor has on its consumer devices
  (components) and its interaction  with file systems
* Improved markup (by hrs@)

Reviewed by:	hrs
Approved by:	gnn (mentor)
2009-01-04 11:31:03 +00:00
Marcel Moolenaar
90886ebcc2 Improve probing.
o   Don't check the dummy fields.
o   The entry is unused if either dp_mid is 0 or dp_sid is 0.
o   The start or end cylinder cannot be 0.
o   The start CHS cannot be equal to the end CHS.

Submitted by:	nyan
2009-01-04 07:32:06 +00:00
Chin-San Huang
a2ea8684d7 - s/no-scripts/no-script/
PR:		docs/127732
Submitted by:	TerryP <BigBoss1964@gmail.com>
MFC after:	3 days
2009-01-04 07:29:04 +00:00
Ed Schouten
67ac7fd748 Print control characters, even though they are normally not visible.
With cons25, there are printable characters below 0x1B. This is not the
case with ASCII, UTF-8, etc. but in this case we just have to.

Also don't set LC_CTYPE to UTF-8 when libteken is compiled without UTF-8
in the demo-application.
2009-01-04 00:20:18 +00:00
Alfred Perlstein
d5474fd85f Sync with usb4bsd:
src/lib/libusb20/libusb20_desc.c

Make "libusb20_desc_foreach()" more readable.

src/sys/dev/usb2/controller/*.[ch]
src/sys/dev/usb2/core/*.[ch]

Implement support for USB power save for all HC's.

Implement support for Big-endian EHCI.

Move Huawei quirks back into "u3g" driver.

Improve device enumeration.

src/sys/dev/usb2/ethernet/*[ch]

Patches for supporting new AXE Gigabit chipset.

src/sys/dev/usb2/serial/*[ch]

Fix IOCTL return code.

src/sys/dev/usb2/wlan/*[ch]

Sync with old USB stack.

Submitted by: hps
2009-01-04 00:12:01 +00:00
Ed Schouten
17c98d6dab Resolve some regressions related to tabs and linewrap handling.
It turns out I was looking too much at mimicing xterm, that I didn't
take the differences of cons25 into account. There are some differences
between xterm and cons25 that are important. Create a new #define called
TEKEN_CONS25 that can be toggled to switch between cons25 and xterm
mode.

- Don't forget to redraw the cursor after processing a forward/backward
  tabulation.

- Implement cons25-style (WYSE?) autowrapping. This form of autowrapping
  isn't that nice. It wraps the cursor when printing something on column
  80. xterm wraps when printing the first character that doesn't fit.

- In cons25, a \t shouldn't overwrite previous contents, while xterm
  does.

Reported by:	Garrett Cooper <yanefbsd gmail com>
2009-01-03 22:51:54 +00:00
Nathan Whitehorn
acb97117e3 Fix the OFW interrupt map parser to use its own idea of the number of interrupt
cells in the map, instead of using a value passed to it and then panicing if it
disagrees. This fixes interrupt map parsing for PCI bridges on some Apple
Uninorth PCI controllers.

Reported by:	marcel
Tested on:	G4 iBook, Sun Ultra 5
2009-01-03 19:38:47 +00:00
Marius Strobl
a79bdfef68 Reapply the intpin correction part of r146420 which somehow
got lost.
2009-01-03 14:33:48 +00:00
Kai Wang
440396a75b Added section type SHT_GNU_HASH. GNU-style .hash section is a new
style of hash section with better performace than the original SYSV
hash. It can be generated by newer binutils.
2009-01-03 13:42:49 +00:00
Konstantin Belousov
641e2829b6 Extend the struct vm_page wire_count to u_int to avoid the overflow
of the counter, that may happen when too many sendfile(2) calls are
being executed with this vnode [1].

To keep the size of the struct vm_page and offsets of the fields
accessed by out-of-tree modules, swap the types and locations
of the wire_count and cow fields. Add safety checks to detect cow
overflow and force fallback to the normal copy code for zero-copy
sockets. [2]

Reported by:	Anton Yuzhaninov <citrin citrin ru> [1]
Suggested by:	alc [2]
Reviewed by:	alc
MFC after:	2 weeks
2009-01-03 13:24:08 +00:00
Robert Watson
a603c811f8 Allow the IP_MINTTL socket option to be set to 0 so that it can be
disabled entirely, which is its default state before set to a
non-zero value.

PR:		128790
Submitted by:	Nick Hilliard <nick at foobar dot org>
MFC after:	3 weeks
2009-01-03 11:35:31 +00:00
Antoine Brodin
35b81ec2e5 Add an obsolete file. 2009-01-03 11:25:50 +00:00
Christian Brueffer
3514c91e2c Call pcn_start_locked() instead of pcn_start() where the softc lock is
already held.

Approved by:	rwatson (mentor)
MFC after:	3 weeks
2009-01-03 10:56:10 +00:00
Christian Brueffer
9d721de31e Mdoc and language cleanup. 2009-01-03 10:37:38 +00:00
David E. O'Brien
eee3404481 + Add the -Q be-quiet flag for parallel jobs.
- Enable -Q by default for the moment - there is something weird
  going on in the rescue build.
2009-01-03 10:14:01 +00:00
Qing Li
dc49549713 Some modules such as SCTP supplies a valid route entry as an input argument
to ip_output(). The destionation is represented in a sockaddr{} object
that may contain other pieces of information, e.g., port number. This
same destination sockaddr{} object may be passed into L2 code, which
could be used to create a L2 entry. Since there exists a L2 table per
address family, the L2 lookup function can make address family specific
comparison instead of the generic bcmp() operation over the entire
sockaddr{} structure.

Note in the IPv6 case the sin6_scope_id is not compared because the
address is currently stored in the embedded form inside the kernel.
The in6_lltable_lookup() has to account for the scope-id if this
storage format were to change in the future.
2009-01-03 00:27:28 +00:00
Ed Schouten
bcca92c0e5 Fix a corner case in my previous commit.
Even though there are not many setups that have absolutely no console
device, make sure a close() on a TTY doesn't dereference a null pointer.
2009-01-02 23:39:29 +00:00
Ed Schouten
916501c81c Don't let /dev/console be revoked if the TTY below is being closed.
During startup some of the syscons TTY's are used to set attributes like
the screensaver and mouse options. These actions cause /dev/console to
be rendered unusable.

Fix the issue by leaving the TTY opened when it is used as the console
device.

Reported by:	imp
2009-01-02 23:32:43 +00:00
Qing Li
a42ea597ff The log message should terminate with a newline instead
of a tab character.
2009-01-02 22:51:30 +00:00
Doug Barton
74983dbff9 Add a note to the -m option indicating that you should now specify src/
instead of src/etc.
2009-01-02 22:24:12 +00:00
Warner Losh
96747dc015 Add fd = -1 after close when we detect the format so that subsequent
open_dev will reopen the device.
2009-01-02 08:21:21 +00:00
Doug Barton
42a168ce61 Simplify the code a little by moving the working part of
ARCHSTRING into the new MM_MAKE variable.

We only need to check for the presence of the target of $PAGER
if that variable is actually set. [1]

Pointed out by:	Steve Kargl <sgk@troutmask.apl.washington.edu> [1]
2009-01-02 07:25:30 +00:00
David E. O'Brien
008ca87039 Don't make the MIME magic any longer. 2009-01-02 03:38:21 +00:00
David E. O'Brien
4f99d1ea86 Add an additional COMPILE_ONLY check. 2009-01-02 03:31:45 +00:00
David E. O'Brien
28a8b56297 Record that base/vendor/file/dist@186675 was merged.
Merge base/vendor/file/dist@186675@186690, bringing FILE 4.26 to 8-CURRENT.
2009-01-02 03:10:55 +00:00
David E. O'Brien
c061027810 Virgin import of Christos Zoulas's FILE 4.26. 2009-01-02 02:57:16 +00:00
Doug Barton
e0e184799c Only check for 'nodev' in fstab if that file exists
Submitted by:	sam
2009-01-02 00:37:59 +00:00
Doug Barton
a740208973 For IGNORE_FILES delete the version in the TEMPROOT, not the base.
Submitted by:	clemens fischer <ino-news@spotteswoode.dnsalias.org>
2009-01-02 00:02:14 +00:00
Ed Schouten
bfe36bb462 Remove an unneeded assertion in libteken.
The cursor is only inside the scrolling region when we are in origin
mode. In that case, it should use originreg instead of scrollreg. It is
completely valid to place the cursor outside the scrolling region.
2009-01-01 23:22:01 +00:00
Robert Watson
b523ec24b9 White space and comment tweaks.
MFC after:	3 weeks
2009-01-01 20:03:22 +00:00
Robert Watson
877e88123e Temporary workaround for the limitations of the mbuf flowid field: zero
the field in the mbuf constructors, since otherwise we have no way to
tell if they are valid.  In the future, Kip has plans to add a flag
specifically to indicate validity, which is the preferred model.
2009-01-01 20:03:01 +00:00
Marius Strobl
75193d5283 - Currently the PMAP code is laid out to let the kernel TSB cover the
whole KVA space using one locked 4MB dTLB entry per GB of physical
  memory. On Cheetah-class machines only the dt16 can hold locked
  entries though, which would be completely consumed for the kernel
  TSB on machines with >= 16GB. Therefore limit the KVA space to use
  no more than half of the lockable dTLB slots, given that we need
  them also for other things.
- Add sanity checks which ensure that we don't exhaust the (lockable)
  TLB slots.
2009-01-01 14:01:21 +00:00
Ed Schouten
b4b1c5169d Replace syscons terminal renderer by a new renderer that uses libteken.
Some time ago I started working on a library called libteken, which is
terminal emulator. It does not buffer any screen contents, but only
keeps terminal state, such as cursor position, attributes, etc. It
should implement all escape sequences that are implemented by the
cons25 terminal emulator, but also a fair amount of sequences that are
present in VT100 and xterm.

A lot of random notes, which could be of interest to users/developers:

- Even though I'm leaving the terminal type set to `cons25', users can
  do experiments with placing `xterm-color' in /etc/ttys. Because we
  only implement a subset of features of xterm, this may cause
  artifacts. We should consider extending libteken, because in my
  opinion xterm is the way to go. Some missing features:

  - Keypad application mode (DECKPAM)
  - Character sets (SCS)

- libteken is filled with a fair amount of assertions, but unfortunately
  we cannot go into the debugger anymore if we fail them. I've done
  development of this library almost entirely in userspace. In
  sys/dev/syscons/teken there are two applications that can be helpful
  when debugging the code:

  - teken_demo: a terminal emulator that can be started from a regular
    xterm that emulates a terminal using libteken. This application can
    be very useful to debug any rendering issues.

  - teken_stress: a stress testing application that emulates random
    terminal output. libteken has literally survived multiple terabytes
    of random input.

- libteken also includes support for UTF-8, but unfortunately our input
  layer and font renderer don't support this. If users want to
  experiment with UTF-8 support, they can enable `TEKEN_UTF8' in
  teken.h. If you recompile your kernel or the teken_demo application,
  you can hold some nice experiments.

- I've left PC98 the way it is right now. The PC98 platform has a custom
  syscons renderer, which supports some form of localised input. Maybe
  we should port PC98 to libteken by the time syscons supports UTF-8?

- I've removed the `dumb' terminal emulator. It has been broken for
  years. It hasn't survived the `struct proc' -> `struct thread'
  conversion.

- To prevent confusion among people that want to hack on libteken:
  unlike syscons, the state machines that parse the escape sequences are
  machine generated. This means that if you want to add new escape
  sequences, you have to add an entry to the `sequences' file. This will
  cause new entries to be added to `teken_state.h'.

- Any rendering artifacts that didn't occur prior to this commit are by
  accident. They should be reported to me, so I can fix them.

Discussed on:	current@, hackers@
Discussed with:	philip (at 25C3)
2009-01-01 13:26:53 +00:00
Bjoern A. Zeeb
64f91b28e2 Back out a non-style(9) change from r186668 to unbreak the kernels. 2009-01-01 12:14:39 +00:00
Doug Barton
25e3d9a0e5 General Improvements
====================
1. List the command line options in a more standard way
2. Improve the explanations of some of the arguments (-A, -D)
3. Add ARCHSTRING and MTREEDB to the example rc file
4. Re-sort some of the examples according to the existing distinction
of "has a command line version" vs. "does not have a command line version"

Document changes for r186678
===========================
1. /usr/src/etc -> /usr/src where needed [1]
2. Add IGNORE_FILES to the example rc [2] (and remove IGNORE_MOTD)
3. Update the EXIT STATUS section for [3] and [4]

Update Copyright and .Dd accordingly

PR:		bin/96528 [1]
Submitted by:	ru [1]
PR:		bin/106642 [2]
Submitted by:	Henrik Brix Andersen <henrik@brixandersen.dk>
PR:		bin/122282 [3]
Submitted by:	Eygene Ryabinkin <rea-fbsd@codelabs.ru> [3]
PR:		bin/108183 [4]
Submitted by:	Riccardo Torrini <riccardo@torrini.org> [4]
2009-01-01 12:09:57 +00:00
Doug Barton
e14387c0bf Maintenance and updates
=======================
1. Various improvements to the mtree (-U) feature:
a. Seperate the notion of directory and file (user can override db path)
b. Only check for the existence of the mtree file if -U is set
c. Use mktemp to create the new version of the file
d. More safely install the new file
e. Standardize error messages a bit
2. Remove the last of the MAKEDEV stuff (RIP)

New Features
============
1. Switch to using the top level (e.g., /usr/src) Makefile, and specify
that we should use the *.mk files from the source directory instead of
the installed versions. [1][2] This allows easier cross builds and
simplifies (or in some cases permits) upgrading.
2. Check for the deprecated 'nodev' option in /etc/fstab [3]
3. Add support for the IGNORE_FILES variable [4] and deprecate IGNORE_MOTD
accordingly.
4. Before installing a file check to make sure that the target does not
already exist as a directory [5]
5. Check to be sure that the file installed and error out if not

PR:		bin/96528 [1]
Submitted by:	ru [1]
PR:		bin/129639 [2]
Submitted by:	sam [2]
PR:		bin/122282 [3]
Submitted by:	Eygene Ryabinkin <rea-fbsd@codelabs.ru> [3]
PR:		bin/106642 [4]
Submitted by:	Henrik Brix Andersen <henrik@brixandersen.dk> [4]
PR:		bin/108183 [5]
Submitted by:	Riccardo Torrini <riccardo@torrini.org> [5]
2009-01-01 11:41:13 +00:00
Doug Barton
3c501d0fb6 Revert 184781, 184804, and 184832 (automatic installation of files
that differ only by VCS Id) for the following reasons:
1. It was added without my consent, review, or even a heads up
2. It is something that I've repeatedly said I do not want, and certainly
do not want as the default
3. It is poorly implemented (much too complex, produces false positives
e.g., /etc/mail/helpfile)

Given that this is a situation that comes up very infrequently (usually
only for a major version upgrade) and can usually be handled simply
enough on a one-off basis, I will once again point out that I think
this is a Bad Idea. I would be willing to consider a better implementation
as an option that is off by default.
2009-01-01 10:55:26 +00:00
David E. O'Brien
e78ce05075 Flatten the file vendor area.
Remove the svn:keywords property from the vendor files.
2009-01-01 05:39:43 +00:00