r210331:
Add a new ELF type denoting GNU style hash tables.
r210332:
Changes for supporting GNU Hash sections.
r210333:
Note that the *_fsize() functions are only defined for ELF types that
have a fixed size.
r210335:
- Return zero for file sizes of ELF types that have a variable size.
- Neaten a few comments.
r210336:
Reduce verbosity.
r210338:
Perform additional checks when translating between file and memory
representations of ELF types.
The ELF(3) API allows applications to request a conversion that is
`in-place', i.e., with source and destinations data buffers being
the same. However, the file and memory sizes of ELF sections that
have additional internal structure, such as those of type `Elf_Note',
or `Elf_GNU_Hash_Header', can be determined only known after the
type-specific headers that comprise the first few words in these
sections are read and translated.
Pass in the size of destination buffer to type translation routines
in "libelf_convert.m4" and have these routines return an error code
if the translated data would not fit inside the destination buffer.
r210340:
- Document that the *fsize() functions return a size of 1 for Elf
types that don't have a fixed size.
- The *fsize() functions should return a size of 1, for variable length
types.
- Redefine symbol ELF_T_LAST to match the current end of the list.
r210341:
Add support for translating sections of type ELF_T_GNUHASH.
r210351:
* Note that ar(1) archives may also be opened using `elf_memory(3)`.
* Ignore the passed in value of the `fd` argument for ar(1) archives
opened with elf_memory(3).
r210352:
Add a cross-reference to `elf_rawfile(3)`.
r210353:
* Remove a superfluous error description.
* Document an additional error that may be returned: `ELF_E_ARCHIVE`.
r211192:
Add translation support for section type SHT_SUNW_dof.
r210344:
Avoid switching between "unsigned char" and "char" in the C code
generated from "libelf_convert.m4".
r210345:
* Deprecate `elf_getshnum()`, `elf_getphnum()` and `elf_getshstrndx()` in
favour of `elf_getshdrnum()`, `elf_getphdrnum()` and `elf_getshdrstrndx()`
respectively.
* Add new manual pages for `elf_getshdrstrndx()`, `elf_getphdrnum()` and
`elf_getshdrnum()`.
* Add a deprecation warning for `elf_getshstrndx()`, `elf_getphnum()` and
`elf_getshnum()`.
r210348:
Move helper functions `_libelf_ar_get_{name,number,string}()` and
`_libelf_ar_open()` to a new compilation unit "libelf_ar_util.c"
to break the circular dependency between "elf_memory.o" and
"libelf_ar.o".
r210325:
Bug fix: when updating headers using the gelf_update_*() functions,
the appropriate `dirty' bit needs to be set for both the Elf32 and
Elf64 case.
r210326:
Improve compatibility with other implementations of the ELF(3) API:
when an output file has no program headers, set the 'e_phentsize'
field of the ELF executable header to zero.
r210328:
Bug fix: permit the creation of zero-sized sections.
r210324:
- Correctly handle sections of type SHT_NOBITS. For these sections:
- elf_getdata() and elf_rawdata() should return an "Elf_Data" structure
that has its "d_buf" member set to NULL and "d_size" member set to
the nominal 'size' of the section.
- Update the manual page for these functions.
- Fix a memory leak in an error handling path inside elf_getdata().
- Use _libelf_allocate_data() in elf_newdata() for consistency.
r210438: (np)
Catch up with r210324. d_buf will be NULL for SHT_NOBITS sections, do not
attempt to copy from it in that case.
MFC r211922:
Add Intel Cougar Point PCH SATA Controller DeviceIDs. Correct some existing
entries for Intel Ibex Peak (5 Series/3400 Series) PCH SATA controllers.
MFC r211920:
Add Intel Cougar Point PCH SATA Controller DeviceIDs. Correct some existing
entries for Intel Ibex Peak (5 Series/3400 Series) PCH SATA controllers.
MFC r209652: sh: Remove comment that the comma operator is missing
in arithmetic expansion.
The comma operator is not listed in POSIX.1-2008 XCU 1.1.2.1 Arithmetic
Precision and Operations (referenced by XCU 2.6.4 Arithmetic Expansion) and
is therefore not required.
- Fix compilation of the subr_unit.c user space test program.
- Use %zu for size_t in a few format strings.
- Correct a comment typo.
- Assert that low and high are >= 0 in new_unrhdr().
MFC r211800:
- Change the threshold from 'running next scrub the <value+1>th day after the
last one' to 'running next scrub the <value>th day after the last one'.
- Improve wording.
yongari [Tue, 31 Aug 2010 00:15:20 +0000 (00:15 +0000)]
MFC r211648:
It seems some newer RTL8139 controllers provides only memory space
register mapping. I'm not sure whether it comes from the fact that
controllers live behind certain PCI brdge(PLX PCI 6152 33BC) and
the bridge has some issues in handling I/O space register mapping.
Unfortunately it's not possible to narrow down to an exact
controller that shows this issue because RealTek used the same PCI
device/revision id again. In theory, it's possible to check parent
PCI bridge device and change rl(4) to use memory space register
mapping if the parent PCI bridge is PLX PCI 6152. But I didn't try
to do that and we wouldn't get much benefit with added complexity.
Blindly switching to use memory space register mapping for rl(4)
may make most old controllers not to work. At least, I don't want
to take potential risk from such change. So use I/O space register
mapping by default but give users chance to override it via a
tunable. The tunable to use memory space register mapping would be
given by adding the following line to /boot/loader.conf file.
dev.rl.%d.prefer_iomap="0"
This change makes P811B quad-port work with this tunable.
yongari [Mon, 30 Aug 2010 21:15:40 +0000 (21:15 +0000)]
MFC r211105:
Add support for Atheros AR8151/AR8152 PCIe gigabit/fast ethernet
controller. These controllers are known as L1D(AR8151) and
L2CB/B2(AR8152). This change adds supports for the following
controllers.
o AR8151 v1.0(L1D) gigabit ethernet controller
o AR8151 v2.0(L1D) gigabit ethernet controller
o AR8152 v1.1(L2CB) fast ethernet controller
o AR8152 v2.0(L2CB2) fast ethernet controller
These controllers have the same feature of AR8131/AR8132 and
support improved power saving control. The user visible change at
this moment is reduced jumbo frame size from 9KB to 6KB. Many
thanks to Atheros for continuing to support FreeBSD.
yongari [Mon, 30 Aug 2010 21:07:26 +0000 (21:07 +0000)]
MFC r211047-211048,211051-211053,211285:
r211047:
Controller does not seem to support more than 1024 bytes DMA burst.
Limit DMA burst size to be less than or equal to 1024 bytes.
r211048:
Do not touch CMB TX threshold register when CMB is not used.
Note, alc(4) does not use CMB at all due to silicon bug.
r211051:
Always disable ASPM L0s and enable L1 before entering into WOL
suspend state. Also disable master clock after PHY power down,
this is supposed to save more power. The master clock should be
enabled if WOL is active.
r211052:
Remove unnecessary assignment.
r211053:
Cache PCIY_PMG and PCIY_EXPRESS capability pointer to softc and use
it instead of calling pci_find_extcap().
r211285:
Make sure to disable RX MAC in alc_stop_mac(). Previously there
was a logic error which it always enabled RX MAC.
yongari [Mon, 30 Aug 2010 20:49:51 +0000 (20:49 +0000)]
MFC r210904:
Reduce Tx interrupt moderation timer from 50ms to 1ms. The default
value resulted in poor performance for UDP packets. With this
change, UDP bulk transfer performance is more than 940Mbps.
jkim [Mon, 30 Aug 2010 17:34:59 +0000 (17:34 +0000)]
MFC: r211823
Check opcode for short jump as well. Some option ROMs do short jumps
(e.g., some NVIDIA video cards) and we were not able to do POST while
resuming because we only honored long jump.
jh [Mon, 30 Aug 2010 14:44:22 +0000 (14:44 +0000)]
MFC r211342:
- Check that strtoul(3) succeeds to convert the entire string in a few
places.
- In getasciilabel(), set the disk type only when a valid type is given.
attilio [Mon, 30 Aug 2010 10:30:35 +0000 (10:30 +0000)]
MFC r208752, r209590:
Protect periph drivers list and rearrange things to minimize the chance of
stepping oneself during probing.
Don't blindly decrement a periph probe count.
davidxu [Sun, 29 Aug 2010 08:19:07 +0000 (08:19 +0000)]
Record merge info for r211960.
-This line, and those below, will be ignored--
> Description of fields to fill in above: 76 columns --|
> PR: If a GNATS PR is affected by the change.
> Submitted by: If someone else sent in the change.
> Reviewed by: If someone else reviewed your modification.
> Approved by: If you needed approval for this commit.
> Obtained from: If the change is from a third party.
> MFC after: N [day[s]|week[s]|month[s]]. Request a reminder email.
> Security: Vulnerability reference (one per line) or description.
> Empty fields above will be automatically removed.
ume [Sat, 28 Aug 2010 17:06:22 +0000 (17:06 +0000)]
MFC r211276:
- When there is no room for returning the result, nss backend
have to return ERANGE and terminate with NS_RETURN.
- When gethostbyname_r(3) and the friends end with an error,
set errno to the value nss backend returns, and return errno
value.
bschmidt [Sat, 28 Aug 2010 07:21:15 +0000 (07:21 +0000)]
MFC r211295,211314,211546:
Introduce IEEE80211_C_RATECTL, drivers which use the ratectl framework
should set this capability. Initialize ni_txrate after txparams have
been setup. Some drivers calculate various things prior to association
based on ni_txrate and rely on it being nonzero.
- Utilize IA32_TEMPERATURE_TARGET, a.k.a. Tj(target) in place
of Tj(max) when a sane value is available, as documented
in Intel whitepaper "CPU Monitoring With DTS/PECI"; (By sane
value we mean 70C - 100C for now);
- Print the probe results when booting verbose;
- Replace cpu_mask with cpu_stepping;
- Use CPUID_* macros instead of rolling our own.
Catch known CPUs before using IA32_TEMPERATURE_TARGET.
This way we would have an opportunity to hide the
Tj(target) value doesn't seem right stuff if we know
it's not working there.
Add temperature value for Core2 Duo Extreme Mobile that
I have access to.
mckusick [Sat, 28 Aug 2010 00:27:47 +0000 (00:27 +0000)]
MFC of -r210382 to note that foreground fsck should be run after
a filesystem related panic. Also -r210933 and -r211397 by joel
to fix typos and spelling mistakes.
bz [Fri, 27 Aug 2010 21:52:05 +0000 (21:52 +0000)]
MFC r211451:
When calculating the expected memory size for userspace, also take the
number of syncache entries into account for the surplus we add to account
for a possible increase of records in the re-entry window.
jhb [Fri, 27 Aug 2010 18:55:24 +0000 (18:55 +0000)]
MFC 210774,210935:
- Tweak the logic to disable CLFLUSH in virtual environments to work around
problems with flushing the local APIC register range so that it checks
vm_guest directly.
- Add Xen to the list of virtual vendors. In the non PV (HVM) case this
fixes the virtualization detection successfully disabling the CLFLUSH
instruction.
jhb [Fri, 27 Aug 2010 18:50:12 +0000 (18:50 +0000)]
MFC 211433:
Ensure a minimum "slop" of 10 extra pcb structures when providing a
memory size estimate to userland for pcb list sysctls. The previous
behavior of a "slop" of n/8 does not work well for small values of n
(e.g. no slop at all if you have less than 8 open UDP connections).
andre [Fri, 27 Aug 2010 10:15:45 +0000 (10:15 +0000)]
MFC r211464:
If a TCP connection has been idle for one retransmit timeout or more
it must reset its congestion window back to the initial window.
RFC3390 has increased the initial window from 1 segment to up to
4 segments.
The initial window increase of RFC3390 wasn't reflected into the
restart window which remained at its original defaults of 4 segments
for local and 1 segment for all other connections. Both values are
controllable through sysctl net.inet.tcp.local_slowstart_flightsize
and net.inet.tcp.slowstart_flightsize.
The increase helps TCP's slow start algorithm to open up the congestion
window much faster.
r209116
Add knob to get packet timestamps from the hardware.
r209839
Fix bufsize calculation so that cxgbtool can display information for the
last I/O queue too.
r209840
Eliminate ext_intr_task. The "slow" interrupt handler is already
running on the adapter's task queue. Just do what the task does
instead of enqueueing it.
r209841
Improved link detection.
r211345
wakeup is required if the adapter lock is released anywhere during
init and not just for the may_sleep case.
r211346
Always reset the XGMAC's XAUI PCS on a link up.
r211347
Fix tx pause quanta and timer calculations.
edwin [Tue, 24 Aug 2010 07:59:39 +0000 (07:59 +0000)]
For some reason, the new files which got merged from the head branch
didn't get automatically added to the repository.
MFC of r205821 r205827 r205828 r205862 r205872 r205937 r206568
MFC of r208825 r208826 r208827 r208828 r208829 r208943
r205821:
Long awaited update to the calendar system:
- Repeating events which span multiple years (because of -A, -B or
just the three days before the end of the year).
- Support for lunar events (full moon, new moon) and solar events
(equinox and solstice, chinese new year). Because of this, the
options -U (UTC offset) and -l (longitude) are available to
compensate if reality doesn't match the calculated values.
r205828:
Use local names for calendar.dutch
r205862:
Fix DST thingies in calendar.australia
r205872:
Make licenses 3 clause instead of 4 clause
r205937:
Make the dates in the Tasmanian part of calendar.australia properly
variable.
r206568:
Typo in Allerheiligen in calendar.dutch
r208825, r208826, r208827, r208828, r208829, r208943:
Coverity Prevent related fixes.
edwin [Mon, 23 Aug 2010 22:09:25 +0000 (22:09 +0000)]
MFC of r205821 r205827 r205828 r205862 r205872 r205937 r206568
MFC of r208825 r208826 r208827 r208828 r208829 r208943
r205821:
Long awaited update to the calendar system:
- Repeating events which span multiple years (because of -A, -B or
just the three days before the end of the year).
- Support for lunar events (full moon, new moon) and solar events
(equinox and solstice, chinese new year). Because of this, the
options -U (UTC offset) and -l (longitude) are available to
compensate if reality doesn't match the calculated values.
r205828:
Use local names for calendar.dutch
r205862:
Fix DST thingies in calendar.australia
r205872:
Make licenses 3 clause instead of 4 clause
r205937:
Make the dates in the Tasmanian part of calendar.australia properly
variable.
r206568:
Typo in Allerheiligen in calendar.dutch
r208825, r208826, r208827, r208828, r208829, r208943:
Coverity Prevent related fixes.
jhb [Mon, 23 Aug 2010 20:53:01 +0000 (20:53 +0000)]
MFC 210936,210946:
Ethernet vlan(4) interfaces have valid Ethernet link layer addresses but
use a different interface type (IFT_L2VLAN vs IFT_ETHER). Treat IFT_L2VLAN
interfaces like IFT_ETHER interfaces when handling link layer addresses.
- Fix typo in macro name and macro usage.
- Consistently spell our email addresses <foo@FreeBSD.org>
- Wordsmithing of bsnmpd.1; bump .Dd
- Fix two minor typos.
andre [Sun, 22 Aug 2010 08:47:00 +0000 (08:47 +0000)]
MFC r211327:
Add more logging points for failures in syncache_socket() to
report when a new socket couldn't be created because one of
in_pcbinshash(), in6_pcbconnect() or in_pcbconnect() failed.
nwhitehorn [Sun, 22 Aug 2010 00:04:24 +0000 (00:04 +0000)]
MFC r209950:
Unify ABI-related bits of the Book-E and AIM machdep routines
(exec_setregs, etc.) in order to simplify the addition of 64-bit support,
and possible future extension of the Book-E code to handle hard floating
point and Altivec.
nwhitehorn [Sat, 21 Aug 2010 22:23:22 +0000 (22:23 +0000)]
MFC r209812:
Replace the existing PowerPC busdma implementation with the one from
amd64 (with slight modifications). This provides support for bounce
buffers, which are required on systems with RAM above 4 GB.
jilles [Sat, 21 Aug 2010 20:48:09 +0000 (20:48 +0000)]
MFC r211155: sh: Fix heap-based buffer overflow in pathname generation.
The buffer for generated pathnames could be too small in some cases. It
happened to be always at least PATH_MAX long, so there was never an overflow
if the resulting pathnames would be usable.
This bug may be abused if a script subjects input from an untrusted source
to pathname generation, which a bad idea anyhow. Most shell scripts do not
work on untrusted data. secteam@ says no advisory is necessary.
PR: bin/148733
Reported by: Changming Sun snnn119 at gmail com