MFC rev. 1.5, 1.6:
Restore the branding of the ELF executables. The structure was optimized out.

Approved by:	re (kensmith)
MFC rev. 1.181:
Check for the program headers alignment of the ELF images before
dereferencing. Unaligned access could cause panic on strict alignment
architectures.

Approved by:	re (kensmith)
MFC revision 1.209
date: 2007/11/26 19:08:08;  author: sos;  state: Exp;  lines: +1 -1
Use device_set_desc_copy in the generic ident as its used on a temp buffer.

Approved by:	re (kensmith)
MFC:
sys/arm/include/asmacros.h rev 1.7
sys/arm/include/atomic.h rev 1.23

Close a race.

The RAS implementation would set the end address, then the start
address.  These were used by the kernel to restart a RAS sequence if
it was interrupted.  When the thread switching code ran, it would
check these values and adjust the PC and clear them if it did.

However, there's a small flaw in this scheme.  Thread T1, sets the end
address and gets preempted.  Thread T2 runs and also does a RAS
operation.  This resets end to zero.  Thread T1 now runs again and
sets start and then begins the RAS sequence, but is preempted before
the RAS sequence executes its last instruction.  The kernel code that
would ordinarily restart the RAS sequence doesn't because the PC isn't
between start and 0, so the PC isn't set to the start of the sequence.
So when T1 is resumed again, it is at the wrong location for RAS to
produce the correct results.  This causes the wrong results for the
atomic sequence.

The window for the first race is 3 instructions.  The window for the
second race is 5-10 instructions depending on the atomic operation.
This makes this failure fairly rare and hard to reproduce.

Mutexs are implemented in libthr using atomic operations.  When the
above race would occur, a lock could get stuck locked, causing many
downstream problems, as you might expect.

Also, make sure to reset the start and end address when doing a syscall, or
a malicious process could set them before doing a syscall.

Reviewed by: imp, ups (thanks guys)
Approved by:	re (kensmith)
Pointy hat to:  cognet
MFC: 1.317, 1.318, 1.319
 Fix bit macros to work on multi-byte types

Approved by: re(kensmith)
Add missed closing brace.
MFC: If "length at end" flag is specified, then a zero
length at the beginning doesn't mean an empty body.

Approved by: re (Ken Smith)
The kernel version of Linux statfs64 is actually supposed to take
3 arguments, but we had forgotten the second argument. Also make the
Linux statfs64 struct depend on the architecture because it has an
extra 4 bytes padding on amd64 compared to i386.

The three argument fix is from David Taylor, the struct statfs64
stuff is my fault. With this patch I can install i386 Linux matlab
on an amd64 machine.

Approved by:	re (kensmith)
regen.

Approved by:	re (kensmith)
- Add support for all geom class command options in the Fixit environment by
  pointing GEOM_LIBRARY_PATH to the geom libraries.

PR:		misc/113543
Submitted by:	Ed Schouten <ed -at- fxq.nl>
Approved by:	re (kensmith), pjd (mentor)
MFC rev 1.6 msk.4
MFC rev 1.26 if_msk.c
MFC rev 1.11 if_mskreg.h

  Bring in support for: Marvell Yukon 8039

  PR:             118401
  Submitted by:   Skip Ford <skip at menantico dot com>
  Approved by:    imp (mentor), yongari
  MFC After:      3 days

Approved by:	re (kensmith), imp (mentor, implicit)
MFC: 1.149-1.150.  Hold Giant over device_suspend/resume() methods in apm.

Approved by:	re
This commit was manufactured by cvs2svn to create branch 'RELENG_6'.
Sync up ata(4) work by sos@ on -HEAD:

 * Add preliminary SATA ATAPI support for sii 3132/3124 chips.
 * Fix speed report on Intel SATA chips in compat mode.
 * Fix broken detect of JMicron 368.

Related revisions:
 - ata-chipset.c: 1.208, 1.210
 - ata-disk.c.c:  1.205

Approved by:	re (kensmith), sos
MFC: Support new ARC120x generation cards.

Approved by: re
Submitted by: Erich Chen @ Areca
MFC:	1.3

Teach dhclient(8) about net80211 link (association) status.

Reviewed by:	brooks
Approved by:	re (kensmith)
MFC rev 1.14:

- Add doc/hu_* and doc/mn_* to the sample refuse file so that it includes all
  of the languages
MFC rev 1.13:

- Add doc/hu_* and doc/mn_* to the refuse examples so that include all
  of the currently used languages
MFC to RELENG_6
aac_debug.c:1.23

  Respell 'Conatainer' as 'Container'.

Approved by:	re (kensmith)
MFC to RELENG_6
aac_pci.c:1.63-1.65
aac.4 1.37-1.39

  Add PCI IDs for controllers obtained from Adaptec's latest drivers.

Approved by:	re (kensmith)