Fix an off-by-one error in inet_network(3). [08:02]
Security: FreeBSD-SA-08:01.pty
Security: FreeBSD-SA-08:02.libc
Approved by: re (kensmith)
Thanks to: re@ for being so patient with us holding up the release
r1.62:
- Document icase variable of make search, which can be used to control
case-sensitivity
r1.63:
- Document PORT_DBDIR
r1.64:
- Remove incomplete sentence fragment
Approved by: re (hrs)
Fix a panic where if the mbuf was consumed by the filter for requeueing
(dummynet), ipsec_filter() would return the empty error code and the ipsec
code would continue to forward/deference the null mbuf.
Approved by: re (gnn)
> Plug a memory leak. Once any given package (e.g. perl) was installed
> we would leak a saved screen for every other package we tried to install
> that listed perl as one of its dependencies. When installing things
> like gnome and kde that wound up being a LOT of leaked memory.
While here fix up some whitespace nits that show up as differences
from the other branches.
Approved by: re (bmah)
Remove process limits for datasize and stacksize which are unlimited
during a "normal login" (thanks to /etc/login.conf) but not when
sysinstall is running as part of an installation. Fixups for error
messages and a comment that became untrue.
Build test help from: rwatson
Approved by: re (bmah)
> For the INDEX file to be used on disc1 of the 7.0-RELEASE the longest
> "build dependencies" field is 5,108 characters which overflows the
> length of the junk buffer by a teeny bit. This whole section needs
> much more error checking but for now just completely ignore stuff
> we have no interest in instead of copying it to someplace we don't
> use in the process.
Approved by: re (bmah)
In openprom_ioctl() ensure appropriate permissions and that data isn't
NULL and doesn't point to a NULL pointer before dereferencing it.
Approved by: re (kensmith)
When IPSEC fails to allocate policy state for an inpcb, and MAC is in use,
free the MAC label on the inpcb before freeing the inpcb.
Submitted by: tanyong <tanyong at ercist dot iscas dot ac dot cn>,
zhouzhouyi
Approved by: re (kensmith)
Fix a MAC label leak for POSIX semaphores, in which per-policy labels
would be properly disposed of, but the global label structure for the
semaphore wouldn't be freed.
Reported by: tanyong <tanyong at ercist dot iscas dot ac dot cn>,
zhouzhouyi
Approved by: re (kensmith)
Fix leaking MAC labels for IPv6 inpcbs by adding missing MAC label
destroy call; this transpired because the inpcb alloc path for IPv4/IPv6
is the same code, but IPv6 has a separate free path. The results was
that as new IPv6 TCP connections were created, kernel memory would
gradually leak.
Reported by: tanyong <tanyong at ercist dot iscas dot ac dot cn>,
zhouzhouyi
Approved by: re (kensmith)
> Initial pass at shifting packages around for 6.3-REL layout. There
> is a lot of space left on disc3 that we can put to use by adding back
> in lots of the packages we've been slowly ejecting through the years.
> We'll decide exactly which ones a little bit later.
Approved by: re (rwatson)
> Add support for disc3. Depending on architecture the combination of
> kde3 and gnome2 is at least 670Mb which would mean if we stick with
> just disc1/disc2 the only packages we could provide on the iso's
> would be X11, kde3, and gnome2...
Approved by: re (rwatson)
> A few more adjustments needed because of changes in xorg. Just installing
> xorg-server doesn't include any video drivers so install xorg-drivers as
> well. And if font-alias isn't installed the X server won't start,
> complaining it can't find the font "fixed".
Approved by: re (rwatson)
- Use the macro to check the port status has it will also test if its
administratively down (!IFF_UP)
- Use the same parameters to lagg_link_active() to get the backup port as in
the output path, this didnt actually matter in practice as sc_primary is
always the first on the port list.
Approved by: re (kensmith)
When the bridge has an address and a packet comes in for it then drop it if
the link has been marked discarding by Spanning Tree.
Approved by: re (kensmith)
Disallow the legacy USB circuit to generate an SMI# via an ICH
register (MacBooks only).
This allows MacBooks to boot in SMP mode without any trick and
solves the timer problems with HZ=1000.
Approved by: re (kensmith), njl (mentor)
Disallow the legacy USB circuit to generate an SMI# via an ICH
register (MacBooks only).
This allows MacBooks to boot in SMP mode without any trick and
solves the timer problems with HZ=1000.
Approved by: re (kensmith), njl (mentor)
* 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
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
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)
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)
zic(8) should exit the loop when the end of the string is reached
due to the call to error(). The problem found by doing fuzz testing.
Approved by: re (kensmith)
notes documentation for 6.3-RELEASE. This is a collective work by the FreeBSD
Simplified Chinese Project team.
Submitted by: Junfeng Wen <wjf at cn.FreeBSD.org>
Chifeng Qu <chifeng at gmail.com>
delphij
Obtained from: The FreeBSD Simplified Chinese Project CVS
Approved by: re (kensmith)
if_ipw.c:1.34
Plug two potential (root-only, local) information leaks. buf is not
initialized before use and returned integrally instead of up to size.
Submitted by: Ilja van Sprundel <ilja -at- netric.org>
Reviewed by: secteam
Approved by: re (kensmith)
Always honor promiscuous flag prior to programming Rx multicast
filter. This fixes a regression introduced in rev 1.89.
PR: 114632
Approved by: re (kensmith)
- fix the use after free seen when sending packets small enough to fit as an immediate
and bpf peers are present
- update to firmware rev 4.7 along with various small vendor fixes
Approved by: re(kensmith)
Call NET_LOCK_GIANT/NET_UNLOCK_GIANT around calls to protocol drain
methods in mb_reclaim(). This is not an MFC, as debug.mpsafenet is
not present in 7.x or 8.x. In practice, this likely resulted in
instability only on kernels with INVARIANTS, as the protocol drain
paths are generally MPSAFE.
PR: 116034
Reported by: Dan Lukes <[email protected]>
Discussed with: kmacy, alc
Approved by: re (kensmith)
Tested by: Eugene Grosbein <eugen at grosbein dot pp dot ru>
message should have read:
This is a partial MFC of rev 1.126 from HEAD's libkse. This only merges the
fix which causes stderr_debug to write output to STDOUT_FILENO instead
of STDERR_FILENO. This is known to fix (or workaround) some mono-related
build problems.
Approved by: re (kensmith)
This is a partial MFC of rev 1.126 from HEAD's libkse. This only merges the
fix which causes stderr_debug to write output to STDERR_FILENO instead
of STDOUT_FILENO. This is known to fix (or workaround) some mono-related
build problems.
Approved by: re (kensmith)
arm/at91/kb920x_machdep.c rev 1.24, 1.25 and 1.26
arm/at91/std.at91 rev 1.4
arm/at91/std.kb920x rev 1.5
arm/at91/at91rm92reg.h rev 1.6
conf/options.arm 1.18
Small tweaks to be able to load the kernel at a different address than
0x20000000 + add an option to override the default value of the master clock
frequency.
arm/at91/if_ate.c rev 1.21:
In ate_get_mac(), try to get the mac address in the right order, at least
in the same order as it's set in ate_set_mac.
arm/conf/HL200: config file for the Hot-e HL200
Approved by: re (kensmith)
Expand the EXAMPLES section for atacontrol.8
PR: docs/117310
Submitted by: Ted Mittelstaedt <tedm at ipinc dot net>
with minor modifications by me.
Approved by: re (hrs)
Remove mentionings of kern.dumpdev which is no longer available.
PR: docs/113570
Submitted by: lawrance
MFC After: 3 days (where applicable)
Approved by: re (hrs)
Sync with md(4)'s information regarding the swap backend.
PR: docs/115721
Submitted by: Stefan Lambrev <[email protected]>
MFC After: 3 days
Every newline should start on it's own line. I didn't do that in the
previous commit, so make it happen now.
Prodded by: brueffer
Approved by: re (hrs)
Add information about the ICH6 and ICH7 being supported since recently.
MFC rev 1.20 ichsmb_pci.c
Add the Intel 82801FB (ICH6) SMBus controller and the
Intel 82801GB (ICH7) SMBus controller.
PR: 85106 [1]
PR: 99663 [2]
Approved by: imp (mentor), jhb
Submitted by: Oliver Fromme <olli at lurza.secnetix dot de>, [1]
Arthur Hartwig <arthur dot hartwig at nokia dot com>, [1]
Lowell Gilbert <lgfbsd at be-well dot ilk dot org> [2]@
MFC After: 3 days
Approved by: re (hrs), imp (mentor, implicit)
Fix 3 issues relating to the use of "auth" rules in IPFilter, from sourceforge:
1837014 Kernel panics after authentication of an outgoing packet
1836992 Potential bugs in packet auth code (w/patches)
1836967 Kernel panic when using auth rule with keep state
and another reported only to FreeBSD by Andiry (see PR)
PR: kern/118251
Submitted by: Andriy Syrovenko <[email protected]>
Reviewed by: darrenr
Approved by: re
- Add missing MCP65 id which was accidentally removed in previous commit.
- Add Analog Devices AD1984 codec id.
- Enable pcbeep control for Acer + ALC268 (nid 29). Give enough (fake)
hints so the parser will grab it and allocate "speaker" control.
- Fix regression while preparing DAC and ADC for multichannel
format. Since playback policy is to output to every possible path,
ensure that each DAC is started.
Reported / Tested by: Guy Brand
Approved by: re (kensmith)
o Acer Aspire 4520 laptop
- jack sensing / automute
o Toshiba Satellite A135-S4527 laptop
- jack sensing / automute
Tested by: lioux
o Apple Macbook 3 (is it?)
- require gpio0 (for speakers) and ovref50 (for headphone)
to make it works
- jack sensing / automute
Tested by: Ed Schouten
* Add Nvidia MCP67 controller ids.
* Be sensible about simmilar controller with multiple pci ids.
* Connect unused DAC/ADC to stream#0 rather than forcing each of them
managing their own stream.
Approved by: re (kensmith)
Let sunkbd(4) emulate an AT keyboard by default.
This has the following benefits:
- allows to use the AT keyboard maps in share/syscons/keymaps with
sunkbd(4),
- allows to use kbdmux(4) with sunkbd(4),
- allows Sun RS232 keyboards to be configured and used the same
way as Sun USB keyboards driven by ukbd(4) (which also does AT
keyboard emulation) with X.Org, putting an end to the problem
of native support for the former in X.Org being broken over and
over again.
Approved by: re (kensmith)
their 6-STABLE system. This is necessary because we have this symbol
exported between 20071025 and 20071030. Binaries built during that perios
will be broken after 602115.
Requested by: many
Approved by: re (kensmith)
The kernel uses two ways to write data on a pipe:
o buffered write, for chunks smaller than PIPE_MINDIRECT bytes
o direct write, for everything else
A call to writev(2) may receive struct iov of various size and the
kernel may have to switch from one solution to the other. Before doing
this, it must wake reader processes and any select/poll/kqueue up.
This commit fixes a bug where select/poll/kqueue are not triggered
when switching from buffered write to direct write. It adds calls to
pipeselwakeup().
I give more details on freebsd-arch@:
http://lists.freebsd.org/pipermail/freebsd-arch/2007-September/006790.html
This should fix issues with Erlang (lang/erlang) and kqueue.
Reported by: Rickard Green (Erlang)
Approved by: re (kensmith)
Test that p_textvp is non-NULL be dereferencing, as no executable vnode is
set for kernel processes.
Reported by: Skip Ford <skip at menantico dot com>
Approved by: re (kensmith)
- Merge all the ng_send_fn2* functions into one - ng_send_fn2(),
removing some copy&pasted code.
- Reduce copy and paste in ng_apply_item().
- Resurrect ng_send_fn() as a valid symbol, not a define.
Reviewed by: mav, julian
Approved by: re (kensmith)
compatibility is still broken as we add new symbols to libc. Those
symboles are __sbmaskrune, __sbistype, __sbtoupper and __sbtolower.
The latter three are directly referred by binaries use ctype(3) family
functions (see include/ctype.h for details). This means if a binary
built on 6.3, it uses these symbols that are not available on older
system.
- As this has been in 6 for a month, I intentionally leave these symbols
in libc but map them to original version. So binary built after 602113
will not be broken after this commit.
- Bump __FreeBSD_version for this back-out
PR: 116363
Discussed with: kris, kensmith
Approved by: re (kensmith)
sys/arm/xscale/ixp425/ixp425_npe.c rev 1.6
sys/arm/xscale/ixp425/if_npe.c rev 1.6
sys/arm/xscale/ixp425/ixp425_npevar.h rev 1.2
date: 2007/05/24 16:31:22; author: sam; state: Exp; lines: +3 -3
Search for a proper ucode image to use by incrementing the minor
release number up to the max. This should eliminate the need to
tweak the default imageid define for later releases that are found
on the Intel web site.
Approved by: re (kensmith)
Log: NetApp filers return corrupt post op attrs in the wcc on NFS error responses.
This is easy to reproduce for EROFS. I am not sure if the attrs can be corrupt
for other NFS error responses. For now, disabling wcc pre-op attr checks and
post-op attr loads on NFS errors (sysctl'ed).
Import two binutils header files from FSF 2.15 branch.
These fix binutils compilation on i386/amd64 with GCC 4.1 and
have no other effect.
This fixes RELENG_6 build on RELENG_7/HEAD.
Approved by: re (kensmith)
RELENG_6:
Clean up, and sometimes remove, a number of audit-related implementation
comments.
Note that because of other unrelated changes in HEAD, some portions of
audit.c:1.31 can't be merged verbatim (or at all).
Replace use of AU_NULL with 0 when no audit classes are in use; this
supports the removal of hard-coded audit class constants in OpenBSM
1.0. All audit classes are now dynamically configured via the
audit_class database.
- Remove AU_.* hard-coded audit class constants, as udit classes are now
entirely dynamically configured using /etc/security/audit_class.
- Synchronized audit event list to Solaris, picking up the *at(2) system call
definitions, now required for FreeBSD and Linux. Added additional events
for *at(2) system calls not present in Solaris.
- Add support for zonename tokens.
- Additional audit event identifiers for listen, mlockall/munlockall,
getpath, POSIX message queues, and mandatory access control.
OpenBSM 1.0
- Fix bug in auditreduce(8) which resulted in a memory fault/crash when
the user specified an event name with -m.
- Remove AU_.* hard-coded audit class constants, as udit classes are now
entirely dynamically configured using /etc/security/audit_class.
OpenBSM 1.0 alpha 15
- Fix bug when processing in_addr_ex tokens.
- Restore the behavior of printing the string/text specified while
auditing arg32 tokens.
- Synchronized audit event list to Solaris, picking up the *at(2) system call
definitions, now required for FreeBSD and Linux. Added additional events
for *at(2) system calls not present in Solaris.
- Bugs in auditreduce(8) fixed allowing partial date strings to be used in
filtering events.
OpenBSM 1.0 alpha 14
- Fix endian issues when processing IPv6 addresses for extended subject
and process tokens.
- gcc41 warnings clean.
- Teach audit_submit(3) about getaudit_addr(2).
- Add support for zonename tokens.
OpenBSM 1.0 alpha 13
- compat/clock_gettime.h now provides a compatibility implementation of
clock_gettime(), which fixes building on Mac OS X.
- Countless man page improvements, markup fixes, content fixs, etc.
- XML printing support via "praudit -x".
- audit.log.5 expanded to include additional BSM token types.
- Added encoding and decoding routines for process64_ex, process32_ex,
subject32_ex, header64, and attr64 tokens.
- Additional audit event identifiers for listen, mlockall/munlockall,
getpath, POSIX message queues, and mandatory access control.
Limit total playback channels to just 1, for ALi M5451.
The reliability of it's multi DAC / playback channels is
not that good. Enabling vchans make the bug more visible
since playback allocation will look for possible free
hardware channels first (i.e: the next DAC, the very first
has been consumed by vchan mixer) which in this case has
been proven faulty.
Reported / Tested by: Sascha Klauder
layout. xorg-printserver still exists in the ports tree but it's marked
as depreciated and scheduled for removal.
Versions MFCed:
dist.c: 1.252
dist.h: 1.70
menus.c: 1.428
Approved by: imp (mentor)
rink 2007-08-05 16:55:40 UTC
FreeBSD src repository
Modified files:
lib/libdisk open_disk.c
Log:
Improve error handling in libdisk while parsing the kern.geom.conftxt sysctl.
Previously, any parse error will result in the calling program exiting with an
unpleasant message. This change will cause libdisk to issue a warning and
ignore lines it cannot parse instead of bluntly terminating the unfortunate
enough program.
This change will allow you to use sysinstall if you have a NTFS parition with
a space in the name (such as 'Win Xp'). In such a case, a line like the
following will appear in the kern.geom.conftxt output:
2 LABEL ntfs/Win Xp 209818635264 512 i 0 o 0
As the fields are space-separated, libdisk would go beserk and exit the program.
This would happen if using FreeBSD 7.0 snapshot images (as GEOM_LABEL is in
the installation kernel as well), thus making it impossible to install FreeBSD
without renaming your NTFS paritions.
Reported by: Dwight Berendse <dwight at berendse dot org>
Nod from: phk
Reviewed by: imp
Approved by: re (bmah), imp (mentor)
MFC after: 1 month
Revision Changes Path
1.11 +38 -19 src/lib/libdisk/open_disk.c
Add SMB support for the MCP61 chipset.
PR: 108830
Submitted by: Edwin Mons <freebsd at edwinm dot ik dot nu>
Approbed by: imp (mentor)
Approved by: imp (mentor, implicit)
This does not prevent the build but it is nicer to do it right.
(the problem affects also HEAD and RELENG_7 but there is probably
a lot more to be fixed there in order to produce buildable picobsd
images).
Fix reference within TIOCNOTTY from TIOSCTTY to TIOCSCTTY.
PR: docs/114058
Submitted by: David Sanderson <dsanderson at panasas dot com>
Approved by: re (bmah)
Specify which Dlink chip is supported (D-Link DUB-E100 ver A) because
others (D-Link DUB-E100 ver B1) are not.
PR: docs/109664
Submitted by: Martin Nilsson<martin at mullet dot se>
Patch by: asmodai
1.14 +1 -0 src/sys/security/audit/audit.h
1.15 +22 -0 src/sys/security/audit/audit_arg.c
1.19 +35 -2 src/sys/security/audit/audit_bsm.c
1.14 +2 -2 src/sys/security/audit/audit_bsm_token.c
1.21 +7 -2 src/sys/security/audit/audit_syscalls.c (partial)
- Add support for auditing arguments in setaudit_addr(2)
- Fix bug which which would result in in_addr_ex tokens not being
parsed properly
- Calculate the size of an ip6 address correctly
1.25 +1 -1 src/sys/security/audit/audit.c
1.10 +1 -1 src/sys/security/audit/audit.h
1.11 +2 -2 src/sys/security/audit/audit_arg.c
1.16 +34 -10 src/sys/security/audit/audit_bsm.c
1.10 +12 -12 src/sys/security/audit/audit_bsm_token.c
1.13 +2 -0 src/sys/security/audit/audit_private.h
1.13 +52 -7 src/sys/security/audit/audit_syscalls.c
1.475 +1 -1 src/sys/sys/proc.h
This brings extended subject state support into RELENG_6 for audit
records. This means that applications like sshd can take advantage
of extended subject for IPv6. It should be noted that sshd has not
been modified.
In _pthread_key_create() ensure that libthr is initialized. This
fixes a NULL-dereference of curthread when libstdc+ initializes
the exception handling globals on archs we can't use GNU TLS due
to lack of support in binutils 2.15 (i.e. arm and sparc64), yet,
thus making threaded C++ programs compiled with GCC 4.2.1 work
on these archs.
Correct a copy and paste'o in phys_pager.c, we are talking about phys here
and not about devices.
PR: 93755
Approved by: imp (mentor, implicit when re-assigning the ticket to me).
This includes another fix that is not part of CURRENT and RELENG_7 because
that is not part of the code there anymore.
Approved by: re (kensmith), imp (mentor)
CAM MPSAFE, BIO_FLUSH and alpha support removal, which are not suitable for
RELENG_6.
This makes RELENG_6 to support the same set of ATA devices as RELENG_7 and -CURRENT
did.
Reviewed by: sos
on duplicated code and support 64-bit LBAs for GPT. This also changes the
code to always use EDD on devices that support it which matches the rest of
the x86 bootstrap.
Approved by: re (kensmith)
Add comments explaining why all stores updating a non-kernel page table
must be globally performed before calling any of the TLB invalidation
functions.
With one exception, on amd64, this requirement was already met. Fix this
one case. Also, as a clarification, change an existing atomic op into a
release.
Close a very narrow race that might cause a trigger allocation to be
leaked if a trigger is delivered as the trigger device is closed.
Obtained from: TrustedBSD Project
audit_bsm_klib.c:1.7, audit_pipe.c:1.11, audit_private.h:1.16,
audit_worker.c:1.16 from HEAD to RELENG_6:
Clean up audit comments--formatting, spelling, etc.
RELENG_6:
Remove AUDIT_PRINTF() debugging statements and definition; clean up or
remove associated comments.
Slip audit_file_rotate_wait assignment in audit_rotate_vnode() before
the drop of the global audit mutex.
Obtained from: TrustedBSD Project
Remove unused !AUDIT audit_proc_*() prototypes: unlike in Mac OS X, we
don't define or use these functions if AUDIT isn't configured.
Obtained from: TrustedBSD Project
No need to force __inline__ of currecord(), as the compiler will usefully
inline it when needed already, and the symbol is also required outside of
audit.c. This silences a new gcc warning on the topic of using __inline__
instead of __inline.
When returning early from audit_arg_file() due to so->so_pcb being NULL
(due to an early reset or the like), remember to unlock the socket lock.
This will not occur in 7-CURRENT, but could in theory occur in 6-STABLE.
Add a witness sleep warning to canon_path(), which invokes vput() and hence
may perform an unbounded sleep. Remove an XXX comment suggesting that one
be added.
Obtained from: TrustedBSD Project
Use p_cansee() to check that a target process for an audit state
manipulation is visible to the subject process. Remove XXX comments
suggesting this.
Convert one XXX on a difference from Darwin into a note: it's not a
bug, it's a feature.
Obtained from: TrustedBSD Project
audit_worker.c:1.13 from HEAD to RELENG_6:
Update a number of comments:
- Replace XXX with Note: in several cases where observations are made about
future functionality rather than problems or bugs.
- Remove an XXX comment about byte order and au_to_ip() -- IP headers must
be submitted in network byte order. Add a comment to this effect.
- Mention that we don't implement select/poll for /dev/audit.
Obtained from: TrustedBSD Project
Audit path argument when changing audit trails.
Call NDFREE(), which while not currently strictly necessary, isn't a
bad idea.
Obtained from: TrustedBSD Project
Allow RFCOMM servers to bind to a ''wildcard'' RFCOMM channel
zero (0). Actual RFCOMM channel will be assigned after listen(2)
call is done on a RFCOMM socket bound to a ''wildcard'' RFCOMM
channel zero (0).
Address locking issues in ng_btsocket_rfcomm_bind()
Submitted by: Heiko Wundram (Beenic) < wundram at beenic dot net >
Approved by: re (kensmith)
the last driver version. I suspect sheduling to be at the bottom of it,
but this version fixes it by:
- Making FAST interrupt handling off by default, if you want
to use it #define EM_FAST_IRQ in the Makefile.
- Add dual locks, one for the TX subsystem, the other CORE
for things like init and interface managment.
- Add cleaner MSI/X setup code.
- If using FAST interrupts there is now a mechanism in the
watchdog routine to kick off TX cleanups if they have not
been scheduled.
I think everyone will be happier with this change.
If the INDEX file cannot be opened, print the actual filename / path
pkg_version tried to open instead of just "INDEX" to make the actual
problem more clear (e.g. missing INDEX-8).
Revisions:
1.21 src/sys/dev/sound/pci/atiixp.c
1.4 src/sys/dev/sound/pci/atiixp.h
Add support for trimmed down version of ATI SB600 AC97 audio
controller.
URL: http://www.ipc2u.de/catalog/P/PE/36486.html
PR: kern/117813
Submitted by: Klaus Mayr
There is a race with the current locking scheme and removing
it should have no measurable performance impact.
This fixes page faults leading to panics in pmap_enter_quick_locked()
on amd64/i386.
Requested by: alc@
rgephy.c rev 1.17, rgephyreg.h rev 1.3
Add support for RealTek RTL8211B(L) PHY. It's based on the patch
made by Michael Eisele and the patch was slightly modified by me.
With this change several NVIDIA ethernet controllers(e.g. MCP61)
works.
RTL8211B(L) is RealTek's new gigabit PHY. The PHY has several
features including crossover correction, polarity correction as
well as supporting triple speed(10/100/1000bps). Data transfer
between MAC and PHY is via RGMII for 1000baseT, MII for
10baseT/100baseTX.
Unfortunately, RealTek used the same model number for RTL8211B(L)
PHY so there is no way to discriminate between RTL8211B(L) and its
predecessors. ATM RTL8211B uses revision number 2 so checking the
revision number seems to be only way to identify it.
rgephyreg.c rev 1.18
Setting sc->mii_anegticks to MII_ANEGTICKS_GIGE in rgephy_attach()
is redundant. mii_phy_add_media() already takes care of that.
o RTL8169S/8110S integrated PHY and RTL8211B are gigabit PHYs so set
mii_anegticks to MII_ANEGTICKS_GIGE and use it. Previously it used
to MII_ANEGTICKS which may not be enough to wait before retrying
autonegotiation process at 1000bps.
o Reset autonegotation timer if media option is not IFM_AUTO or we
got a valid link.
o Announce link loss right after it happends.
o Autonegiation is retried every mii_anegticks seconds.
o Report link state changes right after setting autonegotiation.
% Add an example which shows how mdconfig(8) can be used
% to mount an ISO 9660 CD image file.
%
% PR: 112691
% Submitted by: Warren Block, wblock at wonkity.com
Add entries for Epson multifunction scanner/printer/card readers,
with all functions supported.
More details on related topics (SANE configuration, OCR, etc.)
at http://info.iet.unipi.it/~luigi/FreeBSD/dx5050.html
Make the type of the memory used by the BPF filter unsigned, so it
matches the BPF registers (which are the only thing that is assigned
to/from BPF memory). This is a pedantic change that shouldn't change
any behaviour.
PR: 115931
Submitted by: Matthew Luckie <[email protected]>
underlying I/O framework can avoid copying and so that we
avoid a 32-bit overflow issue that was causing bsdtar to
fail when skipping uncompressed tar entries that were an
exact multiple of 4GB.
Correct an error in vm_map_sync(), nee vm_map_clean(), that has existed
since revision 1.1. Specifically, neither traversal of the vm map checks
whether the end of the vm map has been reached. Consequently, the first
traversal can wrap around and bogusly return an error.
Teach /etc/rc.d/ppp to start multiple instances of ppp.
ppp_profile variable can now contain multiple profiles.
Overrides for ppp mode and nat can go into ppp_$profile_mode
and ppp_$profile_nat variables respectively. If those are
not specified, defaults from ppp_mode and ppp_nat are used.
MFC: etc/rc.d/ppp v1.15
Teach /etc/rc.d/ppp how to start/stop individual instances
of ppp. This is an extension of previous commit.
Submitted by: Yuri Kurenkov < y dot kurenkov at init dot ru >
Reviewed by: mtm
Approved by: re (kensmith)
option)
dhclient.conf 1.2
Add a $FreeBSD$ tag missing after the original import. Note that this
file isn't actually installed; the one in src/etc is.
clparse.c 1.3
dhclient-script 1.15
dhclient.c 1.21
dhclient.conf 1.3
dhcp.h 1.3
tables.c 1.4
Implement RFC3442, the Classless Static Route option.
The original DHCP specification includes a route option but it
supports only class-based routes. RFC3442 adds support for
specifying the netmask width for each static route. A variable
length encoding is used to minimize the size of this option.
PR: bin/99534
Submitted by: Andrey V. Elsukov <[email protected]>
Reviewed by: brooks
dhclient-script 1.16
The minimum size of an RFC3442 destination descriptor is five bytes,
so correct test to -ge 5. Without this change an RFC3442 encoded
default route would be ignored.
with last ctype(3) single-byte and multi-byte separation for fixing
operating on UTF-8 locale. To be specific, we introduced a new symbol in
libc. And this symbol is referred via inline functions here. So, you can
not run a binary built with this version of libc on an older system. To
restore the compatibility, make these functions built as non-inlined
form (see lib/libc/nomarco.c) and MFC rev 1.32 which drops the usage of
that symbol in question for __isctype(). As this may impact performance,
I only intend to fix in 6.x, but not 7 (not yet released) and 8 (it's HEAD).
Discussed on: cvs-src
Requested by: scottl
Reviewed by: ache, delphij
Approved by: re (kensmith)
to store size. In particular, the pax 'size' attribute is required
for any file over 8G.
This seems to fix tar -cf - | tar -xf - when there are files
over 8G in the heirarchy being copied.
Implement new apply callback mechanism to handle item forwarding.
When item forwarded, refence counter is incremented, when item
processed, counter decremented. When counter reaches zero,
apply handler is getting called.
It allows to report connect() call status only when it is really completed.
Reviewed by: julian
Approved by: re (kensmith)
1. Determine the location of the rndc* binaries relative to $command
2. Make the stop routine work more like rc.subr's, but try rndc first
3. Allow the rndc.key file to be owned by root OR the named_uid user
is a partial MFC of what went into HEAD/RELENG_7; the locking changes that
constitude the other part do not apply to RELENG_6.
Many thanks to 3Ware/AMCC for their continued support of FreeBSD.
Submitted by: Manjunath Ranganathaiah
Approved by: re
- Gigabyte G33-S2H fixup, due to the present of multiple competing
codecs. Codec at address 0 seems purely digital, or perhaps an HDMI
interface. Let the driver skip it and continue scanning the codecs
starting with address 2 (Realtek ALC885).
* Due to possibilities of future similar cases, put enough logic
in hdac_scan_codecs() to force codec scanning starting from
XX address via tunable "hint.pcm.%d.codec_index".
Reported / Tested by: Toomas Pelberg <[email protected]>
- Trivial headphone / speaker automute fixup for Fujitsu-Siemens
AMILO Si 1848 laptop.
Reported / Tested by: Ed <[email protected]>
- Trivial headphone / speaker automute fixup for Fujitsu-Siemens
Lifebook S7020D laptop.
Reported / Tested by: Jaromir Dvoracek <[email protected]>
- Some smart vendor trying to create interplanetary wormhole by
screwing pci config space during their BIOS update. The side effects
of their failure attempt includes mutilated hardware id, broken
speaker automuting and loosing the entire analog CD connectivity,
thus causing enough collateral damages to collapse the entire
universe. Move along with it.
Please exercise extra cautious when applying BIOS updates.
Reported / Tested by: Pietro Cerutti <[email protected]>
- assembled laptop, based on the MSI-1034
(662) which is now becoming MSI-034A.
- Fix no sound issues (on headphones) for Lenovo ThinkCentre A55 due
to global automute table entry which is not applicable for
non-laptops.
Reported / Tested by: Piotr Smyrak <[email protected]>
- Speaker mute control for HP DC7700 since the front headphone jack
does not generate any interesting unsolicited signal/response.
Reported / Tested by: tyop @ irc.freenode.net
MFC. While the change does not break backward binary
compatibility, it will potentially cause programs compiled on
a new world not to run on older RELENG_6 systems, so we have
to make it possible to distungish between old and new states.
revision 1.6
date: 2007/05/17 11:33:08; author: mtm; state: Exp; lines: +3 -3
o Use the --detach option to kdc(8) instead of using the shell
background operator '&'.
PR: conf/102722
o No need to include $kerberos5_server_flags in $command_args as
rc.subr(8) will take care of this.
revision 1.7
Partial backout of rev. 1.6, but instead of putting kerberos5_server_flags
back in command_args, put it where rc.subr(8) expects it: kerberos5_flags.
Eliminate global symbols starting with an underscore from rc.d
scripts, except for mdconfig* and jail. Such symbols are reserved
for the rc.subr internals. Most scripts can be fixed by just
declaring _foo symbols as local: few scripts actually need them to
be global.
o Implement the stop_boot subroutine [1]. This subroutine can be used by
scripts in rc.d to stop rc(8) from booting into multi-user mode when
a critical or severe error condition is encountered.
o Modify scripts in etc/rc.d that already implemented this functionality
independently.
o Document it.
[1] - This subroutine was implemented in FreeBSD in rc.d/fsck. I moved it
to rc.subr(8). Our version differs slightly in that it takes an
optional argument to stop the boot even if "autoboot" is not set.
Obtained from: NetBSD
Make sure libc is installed before all other shared libraries. Other
libraries might depend on versioned symbols from libc.
This fixes breakage introduced by ctype(3) MFC.
Discussed with: delphij, ru
Approved by: re (kensmith)
- fwohci_arcv() has a problem if the number of packets to be processed
is limited.
- RELENG_7 and -current already have a same workaround.
Reported by: ikob
PR: kern/85434
Teach makewhatis.c to treat .SS with the same severity as .SH.
At least one port (net-mgmt/net-snmp) creates man-pages which are
in the format:
.SH NAME
The Net-SNMP agent \- The snmp agent responds to SNMP queries from manag
ement stations.
.PP
.SS "Modules"
At this moment, makewhatis determines the end of the .SH NAME section
as where it finds .SH again, but there is none here, is it "terminated"
by the .SS.
PR: bin/116706
Submitted by: edwin@
1. Make resolv order deterministic by REQUIRE'ing it in NETWORKING,
and having resolv REQUIRE netif.
2. Tighten up the code and fix whitespace in resolv
1. Misc. typo fixes
2. Lots of duplicate removal in the limerick file
3. Some updates to freebsd-tips
And most recently:
MFC fortunes 1.242: The original version of "The Guy in the Glass" with
proper attribution. See also http://www.theguyintheglass.com/
MFC fortunes 1.243, fortunes-o.real 1.23, and limerick 1.12:
Fix a few small typos and remove a duplicate
This changes give nullfs correctly work with latest unionfs.
Submitted by: Masanori Ozawa <[email protected]> (unionfs developer)
Reviewed by: jeff, kensmith
Approved by: re (kensmith)
Added whiteout behavior option. ``-o whiteout=always'' is default mode
(it is established practice) and ``-o whiteout=whenneeded'' is less
disk-space using mode especially for resource restricted environments
like embedded environments. (Contributed by Ed Schouten. Thanks)
Submitted by: Masanori Ozawa <[email protected]> (unionfs developer)
Reviewed by: jeff, kensmith
Approved by: re (kensmith)
- It has been become MPSAFE.
- Fixed lock panic issue under MPSAFE.
- Fixed panic issue whenever it locks vnode with reclaim.
- Fixed lock implementations not conforming to vnode_if.src style.
Submitted by: Masanori Ozawa <[email protected]> (unionfs developer)
Reviewed by: jeff, kensmith
Approved by: re (kensmith)
- Added support for vfs_cache on unionfs. As a result, you can use
applications that use procfs on unionfs.
- Removed unionfs internal cache mechanism because it has
vfs_cache support instead. As a result, it just simplified code of
unionfs.
- Fixed kern/111262 issue.
Submitted by: Masanori Ozawa <[email protected]> (unionfs developer)
Reviewed by: jeff, kensmith
Approved by: re (kensmith)
rmuser.8 rev. 1.24,1.24 : Typo fixes.
adduser.8 rev. 1.57-1.59: Typo and markup fixes
rev. 1.56:
Add adding_user.8 to SEE ALSO, note that usernames may
contain any character but not being with a hyphen,
similar to adding_user.8.
PR: 35732
MFC: archive_write_set_format_cpio_newc.c 1.2
Non-regular files should have zero-length bodies. libarchive
flags this to clients by updating the entry description when
it writes the header.
return an empty block first. In particular, this fixes a bogus
warning from bsdtar when restoring directories from ZIP archives.
Also, correct the return values at EOF to include the correct
offset.
arm/xscale/i80321/i80321_timer.c 1.8
arm/xscale/i80321/std.iq31244 rev 1.3
conf/options.arm rev 1.6
The IQ80321 clock is 200MHz, but the IQ31244 is 198MHz, so add a kernel option
to override the frequency
- Use the proper bitmask tests for an IPI in the bitmap handler on amd64
and i386.
- Don't test against idle priority, just the idle thread in the IPI_PREEMPT
handlers.
- Remove unused softc.
- Use the actual clock frequency of the PCI bus instead of assuming
33MHz for calculating the latency timer values for its children.
Inspired by NetBSD doing the same and Linux as well as OpenSolaris
using a similar approach.
While at it rename a variable and change its type to be more
appropriate fuer values of PCI properties so the variable can be
more easily reused.
- Initialize the cache line size register of PCI devices to a
legal value; the cache line size is limited to 64 bytes by the
Fireplane/Safari, JBus and UPA interconnection busses. Setting
it to an unsupported value caused bad performance at least with
GEM as it causes them to not do cache line bursts and to not
issue cache line commands on the PCI bus.
interface left in, thanks to those that caught this.
Second, there was a 82571 fix in the last delta that
got missed, it has now been converted and added.
Make sure to take PHY out of power down mode in device attach.
Without this the PHY wouldn't work as expected. This should fix
dual-boot Windows XP machine where RealTek Windows drivers put the
PHY in power down mode during shutdown. The magic PHY register
accesses come from RealTek driver. No datasheets mention the magic
PHY registers.
In general, the PHY wakeup code should go into PHY driver. However it
seems that it only apply to RTL8169S single chip and it would be
another hack if we have rgephy(4) check what parent driver/chip model
is attached.
shared lookups are enabled. This closes a few races including a race where
concurrent opens of a fifo could result in different v_fifoinfo structures
in different threads.
allocated. This makes 'bus_free_resource()' safe to use in 6.x and also
fixes an issue with the recent PCI MSI code MFCs that caused them to never
update the MSI config registers.
Reported by: gallatin (MSI breakage)
- New Darwin, FreeBSD, and NetBSD versions.
- DragonFly support including the new .Dx macro.
- New .St strings: -isoC-amd1, -isoC-tcor1, -isoC-tcor2, and -ieee1275-94.
sys/dev/uart/uart_kbd_sun.c 1.10, 1.11 (partial), 1.13;
sys/dev/uart/uart_kbd_sun.h 1.3; sys/sparc64/conf/NOTES 1.30
- In sunkbd_probe_keyboard() don't bother to determine the keyboard layout
as we have no use for that info. Instead let this function return the
keyboard ID and verify at its invocation in sunkbd_configure() that we're
talking to a Sun type 4/5/6 keyboard, i.e. a keyboard supported by this
driver.
- Add an option SUNKBD_EMULATE_ATKBD whose code is based on the respective
code in ukbd(4) and like UKBD_EMULATE_ATSCANCODE causes this driver to
emit AT keyboard/KB_101 compatible scan codes in K_RAW mode as assumed by
kbdmux(4). Unlike UKBD_EMULATE_ATSCANCODE, SUNKBD_EMULATE_ATKBD also
triggers the use of AT keyboard maps and thus allows to use the map files
in share/syscons/keymaps with this driver at the cost of an additional
translation (in ukbd(4) this just is the way of operation).
- Implement an option SUNKBD_DFLT_KEYMAP, which like the equivalent options
of the other keyboard drivers allows to specify the default in-kernel
keyboard map. For obvious reasons this made to only work when also using
SUNKBD_EMULATE_ATKBD.
- Implement sunkbd_check(), sunkbd_check_char() and sunkbd_clear_state(),
which are also required for interoperability with kbdmux(4).
- Implement K_CODE mode and FreeBSD keypad compose.
- As a minor hack define KBD_DFLT_KEYMAP also in the !SUNKBD_EMULATE_ATKBD
case so we can obtain fkey_tab from <dev/kbd/kbdtables.h> rather than
having to duplicate it and #ifdef some more code.
- Don't use the TX-buffer for writing the two command bytes for setting the
keyboard LEDs as this consequently requires a hardware FIFO that is at
least two bytes in depth, which the NMOS-variant of the Zilog SCCs doesn't
have. Thus use an inlined version of uart_putc() to consecutively write
the command bytes (a cleaner approach would be to do this via the soft
interrupt handler but that variant wouldn't work while in ddb(4)). [1]
- Fix some minor style(9) bugs.
PR: 90316 [1]
to become unkillable when that process is sent a termination signal. The
process will sit in waitvt looping in the kernel, and chewing up all
available CPU until the system is rebooted.
Note: this is not an MFC as this code no longer exists in HEAD. However,
this is based on the same syscons fix which was just MFC'd after one week
in HEAD.
Reviewed by: bde
Fix a bug that will cause a process that calls the VT_WAITACTIVE ioctl
to become unkillable when that process is sent a termination signal. The
process will sit in waitvt looping in the kernel, and chewing up all
available CPU until the system is rebooted.
Submitted by: Jilles Tjoelker <[email protected]>
Reviewed by: bde
date: 2007/08/30 21:18:42; author: njl; state: Exp; lines: +32 -7
Evaluate _OSC on boot to indicate our OS capabilities to ACPI. This is
needed at least to convince the BIOS to give us access to CPU freq
control on MacBooks.
Approved by: njl (mentor)
ensure the head entry of addrinfo chain has non-NULL ai_canonname to be
compliant with RFC3493.
PR: standards/114910
Approved by: ume (mentor)
lib/libc/net/getaddrinfo.c: 1.86
Dutch calendar
More dates: Sint Maarten, Dierendag, Trinitatis
Fix spelling: Carnaval
Add more of the Royal Family.
Croation calendars:
Update to calendar/calendars/hr_HR.ISO_8859-2/calendar.praznici
with fixes and new dates.
PR: conf/26658
Submitted by: Josip Rodin <[email protected]>
Original PR description:
man(1) can't handle compressed included files.
Some ports will install with compressed manpages. man handles
this by looking for the .gz version of a man source file.
It is also common to include other files with the .so
directive where commands or functions share a man page.
Traditionally ports have had to handle this by either not
compressing the manpages, or using the _MLINKS macro in the
port makefile to create symlinks to the actual source file,
rather than using .so versions. Notably, the current version
of Xorg port breaks. See ports/113096 and ports/115845.
PR: bin/115850
Submitted by: Callum Gibson <[email protected]>
and always require the queue to be specified to reduce diffs with HEAD.
These APIs are internal APIs only used to implement higher level primitives
such as locks and condition variables.
Approved by: alfred
where a reader blocked on a lock with no owner and just assert that it
never happens like HEAD.
- Actually set td->td_tsqueue to the sub-queue of a turnstile that a
thread is actually enqueued to. Otherwise, the kernel would always
think that threads were on the queue for exclusive (write) waiters
(queue 0). Thus, if the priority of a thread waiting on a read lock
was adjusted while it was waiting it could result in corrupting the
queue of waiting threads.
Revision Path
1.82 src/etc/rc.d/Makefile
1.16 src/etc/rc.d/lockd
1.17 src/etc/rc.d/lockd
1.18 src/etc/rc.d/lockd
1.15 src/etc/rc.d/nfslocking
1.16 src/etc/rc.d/statd
1.17 src/etc/rc.d/statd
Split rc.d/nfslocking into two separate scripts: rc.d/lockd
and rc.d/statd. Keep rc.d/nfslocking for POLA reasons but do
not run it during system startup.
PR: conf/107316
Revision Path
1.14 src/etc/rc.d/nfslocking
The precmd routine does not need to check whether the comman
should be "forced". If some pre-condition is not met, it should
fail as it normally does and rc.subr(8) will make the appropriate
decision. Incidentally, the previous behaviour had a bug where
the "force" flag was respected only when checking rc.conf(5) knobs.
The flag was ignored when verifying the rpcbind(8) dependency.
Fix a DIV0 in case a large value for fs_avgfilesize or fs_avgfpdir
is given (with newfs or tunefs) and dirsize overflows.
In case dirsize is <= 0 because of an overflow set maxcontigdirs
to 0 so it will be 1 later. This is what would happen for large
fs_avgfilesize. [1]
Submitted by: pjd [1]
Fix an incorrect PCI device id. The current value conflicts with
the mfi(4) LSI MegaSAS RAID card. Looking at the Linux driver for the
mpt(4) it should be 0x0062 and not 0x0060. Tested with an mfi card
of this device id.
Reviewed by: scottl
from the corresponding NOTES. [1]
There's no corresponding linux_base in the Ports Collection since years,
and no linux distribution which is up-to-date and suitable (security,
widespread, ...) for us. The only complain regarding linux & alpha
we got so far is that the linuxulator doesn't build anymore. This
complaint came from wilko -- the alhpa-part of re@ -- only. As the
alpha platform is dead (no support from the manufacturer / linux
distributions) and deprecated (removed in -current) it was decided to
disable the linux bits from the build instead of trying to fix the
problems on alpha.
The alpha parts in the source are not removed so far, in case there are
1-2 people which actually still make use of this and are interested to
use the linuxulator (and fix the problems). Additionally this prevents
regressions on i386/amd64 when removing the alpha bits in shared code
(the people which care about those code parts don't have enough time ATM
to do extensive testing). This decission may be revisited at a later
point in time.
Discussed with: wilko [1]
camcontrol/Makefile: rev 1.17
camcontrol.8: rev 1.44
camcontrol.c: rev 1.58
Add SCSI READ CAPACITY support to camcontrol. The new 'readcap' subcommand
will automatically issue the 16 byte verison of read capacity if the device
in question is larger than 2TB.
There are also a number of output options here (last block, number of
blocks, human readable) that should meet most needs, and also aid in
scripting.
lance.c 1.3, 1.4; lancevar.h 1.3
- Use our own callout instead of if_slowtimo() for driving lance_watchdog()
in order to avoid races accessing if_timer.
- Use bus_get_dma_tag() to obtain the parent DMA tag so le(4) works on
platforms requiring this.
- Remove BUS_DMA_WAITOK from bus_dma_tag_create() invocations as it's
no valid flag there.
- For setting the port PCnet chips must be powered down or stopped and
unlike documented may not take effect without an initialization. So
don't invoke (*sc_mediachange) directly in lance_mediachange() but
go through lance_init_locked(). It's suboptimal to impose this for
all chips but given that besides the affected PCI bus front-end the
only other front-end which supports media selection is and likely
ever will be the 'ledma' front-end I see not enough reason to break
the in-driver API for this (though one could argue both ways here).
- Fix -Wundef warnings found when compiling i386 LINT, GENERIC and
custom kernels.
- Use bus_get_dma_tag() so gem(4) works on platforms requiring it.
- Use the gem_tick() callout instead of if_slowtimo() for driving
gem_watchdog() in order to avoid races accessing if_timer.
While at it relax the watchdog a bit by reloading it in gem_tint()
if there are still packets enqueued.
- Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
- Fix inconsistencies in prototypes.
o Revised MII support:
- In hme_stop() mask all interrupts.
- In hme_eint() print MIF register contents on MIF interrupts.
- In hme_mifinit() don't bother to preserve the previous MIF config.
This was mainly done in order to preserve the PHY select bit (external
or internal PHY) but which only needs to be set as appropriate when
reading from or writing to the desired PHY in hme_mii_{read,write}reg().
Similarly don't bother to set the PHY select bit in hme_mii_statchg().
- In hme_mii_{read,write}reg() ignore requests to PHYs other than the
external and internal PHY one.
- Move enabling/disabling the MII drivers of the external transceiver from
hme_init_locked() and based on the sheer presence of an external one
to hme_mifinit() and based on the currently selected media, defaulting
to the internal transceiver when the media hasn't been set, yet.
Invoke hme_mifinit() from the newly added hme_mediachange_locked() so
the setting of the MII drivers is updated when changing media.
These changes keep the MII bus from wedging (which manifests in the HME
and the PHYs no longer being able to communicate with each other) when
the PHY device drivers isolate the unused PHY in two-PHY configurations
as present in f.e. Netra t1 100 while changing media, either from
hme_init_locked() (see also below) or via ifconfig(8) (not with the
RELENG_6 ifconfig(8) and miibus(4) though). They also allow for using
both transceivers/PHYs.
- In the newly added hme_mediachange_locked() also reset the PHYs in two-
PHY configurations before invoking mii_mediachg(). This is required
for successfully unisolating the previously unused PHY when switching
between PHYs.
- Now that changing media should no longer cause problems back out rev.
1.27 and re-enable setting the current media in hme_init_locked() (see
the commit message of rev. 1.23 for more info).
These changes are roughly a merge of NetBSD hme.c rev. 1.32 - 1.35 (1.30
was already fixed differently in our 1.36; 1.31 and 1.32 were wrong) with
some parts reworked and things that don't make sense like setting the MII
drivers and restoring the previous MIF and XIF settings in hme_mii_{read,
write}reg() omitted.
o Use the hme_tick() callout instead of if_slowtimo() for driving
hme_watchdog() in order to avoid races accessing if_timer.
o Use bus_get_dma_tag() so hme(4) works on platforms requiring it.
o Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
o Remove invalid BUS_DMA_ALLOCNOW when creating a tag which is used for
a "static" memory allocation only.
- Don't set MIIF_NOISOLATE so ukphy(4) can be used in configurations with
multiple PHYs. In case some PHYs currently driven by ukphy(4) exhibit
problems when isolating due to incomplete implementations or silicon bugs
we'll need to add specific drivers for these. Looking at NetBSD and
OpenBSD I don't expect problems here though (quite the contrary; we still
seem to set MIIF_NOISOLATE without good reason in a bunch of PHY drivers).
- Fix a style(9) whitespace nit.
- In detach method, move if_free() after bus_teardown_intr().
- Use our own callout (the dc_tick() callout uses varying periods
depending on the NIC and isn't used at all with HomePNA links)
instead of if_slowtimo() for driving dc_watchdog() in order to
avoid races accessing if_timer.
- Use bus_get_dma_tag() so dc(4) works on platforms requiring it.
- Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
- Fix a bug originally introduced in rev. 1.74; don't reloaded the
watchdog timer in dc_txeof() in case there are still unhandled
descriptors as dc_poll() invokes dc_poll() unconditionally.
Otherwise this would result in the watchdog timer constantly being
being reloaded and thus circumvent that the watchdog ever fires in
the DEVICE_POLLING case.
- The 575A doesn't have funcregs in memio. So don't claim that it does.
- In detach method, move if_free() after bus_teardown_intr().
- Consistently use if_printf() only in interface methods: if_start(),
if_watchdog, etc., or in functions used only in these methods.
In all other functions in the driver use device_printf().
- Use the xl_stats_update() callout instead of if_slowtimo() for
driving xl_watchdog() in order to avoid races accessing if_timer.
- Use bus_get_dma_tag() so xl(4) works on platforms requiring it.
- Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
- Correctly set IFCAP_VLAN_HWCSUM as re(4) can do VLAN tagging/checksum
offloading in hardware.
- Correctly set media header length for VLAN.
- Use taskqueue_drain() to wait for any pending tasks to complete rather
than just pausing for a second.
- Initialize the rl_vlanctl field of the descriptors to zero (in order
to clear RL_TDESC_VLANCTL_TAG).
Change from a mutex to a read/write lock. This allows the tx port to be
selected simultaneously by multiple senders and transmit/receive is not
serialised between aggregated interfaces.
sys/dev/ic/nec765.h 1.12, 1.13
sys/dev/pc98/fdc.c 1.167
- Enhanced floppy controllers have Data Rate Select Register (DSR) at 0x3f4.
Use it to reset controller and to select data rate. According to Intel
80277AA datasheet, software reset behaves the same as DOR reset except
that it is self clearing. National Semiconductor PC8477B datasheet says
the same. As a side effect, we no longer use Configuration Control
Register (CCR) at 0x3f7 for these controllers, which is often missing
in modern hardware.
- Assume floppy disk is not inserted when we have exhausted retries. This
significantly reduces booting time when there is broken floppy disk drive,
controller, cable, BIOS, etc.
When the floppy controller interface is correctly implemented, disk change
signal (DSKCHG) is reflected in the Digital Input Register (DIR) at 0x3f7.
However, there are many cases that the signal is unusable. Moreover, some
BIOS does not reserve the port at all. In those cases, the register may not
function.
- Fix style nits.
PR: kern/103841
rev. 1.387 of src/sys/vm/vm_map.c
rev. 1.120 of src/sys/vm/vm_map.h
rev. 1.213 of src/sys/vm/vm_mmap.c
Do not drop vm_map lock between doing vm_map_remove() and vm_map_insert().
For this, introduce vm_map_fixed() that does that for MAP_FIXED case.
Tested by: Marc G. Fournier <scrappy hub org>
turnstile_unpend_queue() drops the lock that turnstile_release()
does. This was triggering a mtx_unlock() of an already unlocked
mutex panic.
Obtained from: Juniper Networks
- sync linuxulator:
* de-COMPAT_43-ify:
+ socket related ioctl's
This differs from -current, as the kernel ABI is different
(kern_bind() and kern_connect() free the struct sockaddr on -stable
themself, so two calls to free() are not included in this MFC).
* bug-/compatibility-fixes
* ioctl TIOCGPTN
* 1 style(9)-fix
Tested by: "Arno J. Klaassen" <[email protected]>
Use pmap_enter_object() in vm_map_pmap_enter() to reduce the
locking overhead of premapping objects.
Note: It was later discovered that this change addresses a race condition
that is discussed by vm/vm_fault.c revision 1.216. Specifically, replacing
pmap_enter_quick() by pmap_enter_object() addresses the race.
AP cpus. This changes a guaranteed triple-fault (silent reset) into
something that has a chance to work. Apparently, the NMI handler uses
this stack too.
Make zoneinfo optional so that a filesystem upgrade/update does not overwrite
possibly installed thirdparte zoneinfo databases (from ports for example).
Submitted by: Mark Andrews <Mark_Andrews at isc dot org> (original patch
rewritten by me to be more consistent with the new practise).
Approved by: re (kensmith)
Approved by: imp (mentor)
Reviewed by: ru (some time ago already)
Approved by: imp (mentor, implicit MFC)
- remove cpl->iff panic - we can't know the port number from the rspq on the 4-port
- pick the ifnet based on the interface in the CPL header
- switch to using qset 0 for egress on the 4-port for now - may change
when we start using RSS
- move ether_ifdetach to before the port lock gets deinitialized to avoid
hang in the case where there are BPF peers (cxgb_ioctl is called indirectly
when BPF peers are present)
- don't call t3_mac_reset if multiport is set, this was causing tx errors
by misconfiguring the MAC on the 4-port
- change V_TXPKT_INTF to use txpkt_intf as the interfaces are not contiguous
- free the mbuf immediately in the case where the payload is small enough to be copied
into the rspq
- only update the coalesce timer if for a queue if packets were taken off of it
- add in missed 20ms DELAY in initializaton vsc8211
- prompt MFC as this only applies to the 4-port which is currently completely
broken - OK'd by kensmith
Supported by: Chelsio
Set timeout for all NIS RPC requests to 1 second and not just for
yp_next as revision 1.50 did. This should fix, or at least very much
reduce the risk of, NIS timing out due to UDP packet loss for NIS
functions.
See also revision 1.50 for more details about the general problem.
Change vnode_pager_addr() such that on returning it distinguishes between
an error returned by VOP_BMAP() and a hole in the file.
Change the callers to vnode_pager_addr() such that they return
VM_PAGER_ERROR when VOP_BMAP fails instead of a zero-filled page.
MFC revision 1.232
Long ago, revision 1.22 of vm/vm_pager.h introduced a bug. Specifically,
it introduced a check after the call to file system's get pages method
that assumes that the get pages method does not change the array of pages
that is passed to it. In the case of vnode_pager_generic_getpages(),
this assumption has been incorrect. The contents of the array of pages
may be shifted by vnode_pager_generic_getpages(). Likely, the problem
has been hidden by vnode_pager_haspage() limiting the set of pages that
are passed to vnode_pager_generic_getpages() such that a shift never
occurs.
The fix implemented herein is to adjust the pointer to the array of pages
rather than shifting the pages within the array.
Eliminate the special case handling of OBJT_DEVICE objects in
vm_fault_additional_pages() that was introduced in revision 1.47. Then
as now, it is unnecessary because dev_pager_haspage() returns zero for
both the number of pages to read ahead and read behind, producing the
same exact behavior by vm_fault_additional_pages() as the special case
handling.
MFC revision 1.235
Two changes to vm_fault_additional_pages():
1. Rewrite the backward scan. Specifically, reverse the order in which
pages are allocated so that upon failure it is never necessary to
free pages that were just allocated. Moreover, any allocated pages
can be put to use. This makes the backward scan behave just like the
forward scan.
2. Eliminate an explicit, unsynchronized check for low memory before
calling vm_page_alloc(). It serves no useful purpose. It is, in
effect, optimizing the uncommon case at the expense of the common
case.
When a cached page is reactivated in vm_fault(), update the counter that
tracks the total number of reactivated pages. (We have not been
counting reactivations by vm_fault() since revision 1.46.)
Correct a comment in vm_fault_additional_pages().
to ignore leading "./" that was there to allow us to
compare path names with strcmp(). Comparing pathnames
syntactically is a bit more complex than that, so
encapsulate it in a new utility function and use that instead.
Separate platform-specific config into config_freebsd.h.
Changes to Makefile and bsdtar_platform.h to use this instead
of coding the FreeBSD configuration into bsdtar_platform.h
- Ensure the path cost does not exceed 65535 in legacy STP mode.
- If the path cost is calculated when the link is down, set a pending flag so
it is calculated again when it comes back up.
- To not use 00:00:00:00:00:00 as the bridge id, all interfaces are scanned and
the lowest number wins. All zeros is too low.
- If the STP state machine is stopped then clear the bridge-id and root-id.
Fix a kernel panic based on receiving an ICMPv6 Packet too Big message.
(MFC was planned but has been missed)
PR: 99779
Submitted by: Jinmei Tatuya
Reviewed by: clement, rwatson
Approved by: gnn (mentor)
src/sys/kern/uipc_socket.c: 1.280
platforms on which it's included in the GENERIC kernel. The change
is not an exact MFC because the set of platforms is different between
HEAD and RELENG_6.
dev.archlist.txt 1.95 -> 1.96
PR: 115403
src/usr.sbin/bsnmpd/modules/snmp_bridge/BEGEMOT-BRIDGE-MIB.txt, Revision 1.3
src/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_port.c, Revision 1.6
src/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_snmp.h, Revision 1.5
src/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_sys.c, Revision 1.7
src/usr.sbin/bsnmpd/modules/snmp_bridge/bridge_tree.def, Revision 1.3
src/usr.sbin/bsnmpd/modules/snmp_bridge/snmp_bridge.3, Revision 1.4
Keep the snmp_bridge(3) module up to date with if_bridge(4) and add an
object to control the value of the new 'PRIVATE' bridge members' flag.
While here, remove stale '__unused' compiler directives.
Reviewed by: bz
Approved by: bz (mentor)
The return value of aac_alloc_command() was misinterpreted in aac_ioctl_event().
Once triggered this would leak away all available commands and starve the rest
of the driver.
Submitted by: Eugene Grosbein <[email protected]>
The fix for PR kern/111480 was incomplete, "make MODULES_WITH_WORLD=true
buildworld" stopped with an error.
errors (especially when jumbo frames are enabled or in low memory systems)
because the RX chain was corrupted when an mbuf was mapped to an unexpected
number of buffers.
- Fixed a problem that would cause kernel panics when an excessively
fragmented TX mbuf couldn't be defragmented and was released by
bce_tx_encap().
Replace three copies of the host controller reset sequence that
differ in their details with calls to a new function, ehci_hcreset(),
that performs the reset.
The original sequences either had no delay or a 1ms delay between
telling the controller to stop and asserting the controller reset
bit. One instance of the original reset sequence waited for the
controller to indicate that its reset was complete before continuing,
but the other two immediately let the subsequent code execute. The
latter is a problem on some hardware, because a read of the HCCPARAMS
register returns an incorrect value while the reset is in progress,
which triggers an infinite loop in ehci_pci_givecontroller(), which
hangs the system on shutdown.
The reset sequence in ehci_hcreset() starts with the most complete
instance from the original code, which contains a loop to wait for
the controller to indicate that its reset is complete. This appears
to be the correct thing to do according to "Enhanced Host Controller
Interface Specification for Universal Serial Bus" revision 1.0,
section 2.3.1. Add another loop to wait for the controller to
indicate that it has stopped before setting the HCRESET bit. This
is required by the section 2.3.1 in the specification, which says
that setting HCRESET before the controller has halted "will result
in undefined behaviour".
If the mmap() call in rpc.statd fails, rpc.statd prints a warning
message and then dumps core because the subsequent code assumes that
mmap() succeeded. Since rpc.statd does not have fallback code to
implement the functionality needed to operate on the status file if
it is not memory mapped, rpc.statd should use err() to force the process
to exit if the mmap() call fails.
PR: bin/115430 (mmap() failure previously fixed in statd.c 1.12.8.2)
Add ng_send_fn() error handeling inside ng_con_nodes().
Without it some errors may left unnoticed and unhandeled
that lead to hooks left in half-connected state.
- integrate most recent changes from vendor branch and upgrade to firmware revision 4.5.5
- add filter support
- further improvements for T304
- recover gracefully from spurious immediate packets
- Increase descriptors per call to start
- enqueue per-txq task
- fix per-txq task initialization
- reduce cpu usage by as much as 25% (40% -> 30) by doing txq reclaim more efficiently
- use mtx_trylock when trying to grab the lock to avoid spinning during long encap loop
- add per-txq reclaim task
- if mbufs were successfully re-claimed try another pass
- track txq overruns with sysctl
- In all structures other than port info port is a pointer to a port info,
make the code less confusing by renaming the port number to port_id
RELENG_6 only fix:
- set cluster refcnt to 1 if it isn't otherwise set to fix memory leak
Supported by: Chelsio
src/etc/rc.subr 1.72
src/share/man/man8/rc.subr.8 1.17
Eliminate a number of inconsistencies in handling pre- and post-commands
as well as required_* conditions. Introduce required_modules.
PR: conf/98734
pam_nologin(8) starts to provide an account management function in
addition to the existing authentication function so that sshd(8) can
respect nologin(5) while the rest of PAM consumers work as earlier.
In turn, sshd(8) starts to use the new account management function
in pam_nologin(8) and thus respect nologin(5) even when doing public
key authentication with sshd's internal routines (PAM authentication
isn't called at all in that case).
Based on:
1.12 +2 -10 src/lib/libpam/modules/pam_nologin/pam_nologin.c
1.6 +10 -11 src/lib/libpam/modules/pam_nologin/pam_nologin.8
1.16 +1 -1 src/etc/pam.d/sshd
Approved by: des
PR: bin/112574
Update root zone slave example, and correct typo copied from RFC 2544.
Since this change entails only comments and a fix to something that
is actually broken, I'm MFC'ing it sooner rather than later.
- Add a new nexus hook: nexus_add_irq() to ask the nexus driver to add an
IRQ to its irq_rman. The MSI code uses this when it creates new
interrupt sources to let the nexus know about newly valid IRQs.
Previously the msi_alloc() and msix_alloc() passed some extra stuff
back to the nexus methods which then added the IRQs. This approach is
a bit cleaner.
- Change the MSI sx lock to a mutex. If we need to create new sources,
drop the lock, create the required number of sources, then get the lock
and try the allocation again.
- Simplify the amount of work that has be done for each architecture by
pushing more of the truly MI code down into the PCI bus driver.
- Don't bind MSI-X indicies to IRQs so that we can allow a driver to map
multiple MSI-X messages into a single IRQ when handling a message
shortage.
Note that as with the previous MSI MFC, this does not yet include the
'pci_remap_msix()' function.
on i386. Instead, add a new field to 'struct mdthread' to hold the address
and preserve the tf_err value. This corrects the 'sc_err' value in signal
frames which wine needs.
Tested by: wine-freebsd @ hub org
The call to init_file() needs to be moved outside the loop in statd.c,
otherwise mmap() gets called multiple times, which eventually fails due
to address space exhaustion on i386.
-o means different things depending on the mode in order to
preserve both GNU and POSIX compatibility
--no-same-owner always means the same thing, regardless of other options
* Correct crash when files are removed during a traversal
* Streamline some of the dir and link checks
* Clarify comments
* Guard header includes for portability
Update bsdtar_platform.h to reflect that FreeBSD does
indeed have <errno.h>.
Add a bridge interface flag called PRIVATE where any private port can not
communicate with another private port.
1.11 src/sbin/ifconfig/ifbridge.c
1.142 src/sbin/ifconfig/ifconfig.8
1.102 src/sys/net/if_bridge.c
1.23 src/sys/net/if_bridgevar.h
date: 2007/07/12 01:17:14; author: delphij; state: Exp; lines: +7 -7
- Simulate GNU gzip(1) behavior where full filename is
being output in verbose mode when doing recursive[1].
- Use better representation of S:
PR: bin/114470
Submitted by: Ighighi <ighighi gmail com> [1]
- Avoid holding the softc lock when using copyout().
- Propagate the largest set of interface capabilities supported by all lagg
ports to the lagg interface.
- Use the MTU from the first interface as the lagg MTU, all extra interfaces
must be the same.
Change kn_hook value from cdev to struct tty to avoid dereferencing freed
cdev.
In ttygone(), wake up select(), sigio and kevent() users in addition
to the queue sleepers.
Return EV_EOF from kevent filters if TS_GONE is set.
1. Move the disable-empty-zone stuff down below the first 25 lines so
that the listen-on stuff floats up to the first "page" of text. This
makes it very obvious what's going on so that someone trying to enable
a server for use on a network can easily see how to do that.
2. Change the default behavior back to using a hint zone for the root.
3. Leave the root slave zone config as a commented out example.
4. Remove the F root server from the example at the request of
its operator. (B was removed already.)
Fix interaction with Windows 2000/XP based servers:
If the complete reply on the TRANS2_FIND_FIRST2 request fits exactly
into one responce packet, then next call to TRANS2_FIND_NEXT2 will return
zero entries and server will close current transaction. To avoid
subsequent errors we should not perform FIND_CLOSE2 request.
PR: 78953
Submitted by: Jim Carroll <jim carroll com>
Requested by: Antony Mawer <fbsd-fs mawer org>, Peter <peter pean org>
=============================================================================
From: [email protected]
To: Doug Barton <[email protected]>
please remove "B" from your list/distribution until you have
received permission from the FreeBSD community that this change
is what they want.
Submitted by: Joerg Lehners, Joerg dot Lehners at Informatik dot Uni-Oldenburg dot DE
add missing '#include "opt_compat.h"' (which is already present in current),
so that kernel config options 'COMPAT_FREEBSD4' and 'COMPAT_FREEBSD5' are
recognized again. this made the vmware3 port running under the linuxulator
run again as usual.
Increase a maximum segment size of DMA to 4096. Previously it used
MCLBYTES for the segment size but it used too many Tx descriptors in
TSO case.
While I'm here adjust maximum size of the sum of all segment lengths
in a given DMA mapping to 65535, the maximum size, in bytes, of a IP
packet.
Disable automatic IP ID increment. Due to a hardware bug the automatic
IP ID increment in TSO case generated corrupted IP packets.
This change brings back TSO capability.
outgoing frames had the src of 00:00:00:00:00:00. We fake enough of
if_setlladdr() to set the MAC address without resetting the interface, on
RELENG_6 this also requires overwriting _ac_enaddr in struct arpcom.
- Add support for setmode and settarget messages.
- Allow node to bypass traffic while no alias address defined.
- Fix result of some mechanical change.
- Use the ISO standard function variable vs. a GCC'ism.
- Global xmit stats calculation fix.
- Avoid false assertion on transmit and delayed ack timeout with enabled invariants.
Replace callout_pending() by callout_active() to remove race window.
The DNS query id generation is vulnerable to cryptographic
analysis which provides a 1 in 8 chance of guessing the next
query id for 50% of the query ids. This can be used to perform
cache poisoning by an attacker.
This bug only affects outgoing queries, generated by BIND 9 to
answer questions as a resolver, or when it is looking up data
for internal uses, such as when sending NOTIFYs to slave name
servers.
All users are encouraged to upgrade.
See also:
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-2926
One change in this patch relative to the changes in HEAD is that the
mroute statistics will still fallback to using libkvm on live kernels
if the sysctl fails.
The wpa_passphrase(8) manual page states that it first appeared in
FreeBSD 6.2, but it didn't make it into RELENG_6_2.
Update the manual page to say "FreeBSD 6.3".
1.91 -
When /usr/sbin/xten went away back in 2003, /usr/libexec/xtend was
overlooked.
1.92 -
The archive_write_prepare.3 man page was removed in November 2006.
The wpa man pages were moved to section 8 in June 2005.
The clean_environment() function was removed from libutil in February
2004, so its man page is well overdue for removal.
1.93 -
Nuke man page links that were orphaned by vendor branch import of
TrustedBSD OpenBSM 1.0 alpha 6.
Fix kbdmux(4) issue with backslash/underscore key not working on
Japanese 106/109 keyboard.
PR: kern/112214, kern/99090
Submitted by: TAKAHASHI Yoshihiro, TOMITA Yoshinori
Approved by: re (hrs)
re(4) devices requires an external EEPROM. Depending on models it
would be 93C46(1Kbit) or 93C56(2Kbit). One of differences between them
is number of address lines required to access the EEPROM. For example,
93C56 EEPROM needs 8 address lines to read/write data. If 93C56
recevied premature end of required number of serial clock(CLK) to set
OP code/address of EEPROM, the result would be unexpected behavior.
Previously it tried to detect 93C46, which requires 6 address lines,
and then assumed it would be 93C56 if read data was not expected
value. However, this approach didn't work in some models/situations
as 93C56 requries 8 address lines to access its data. In order to fix
it, change EEPROM probing order such that 93C56 is detected reliably.
While I'm here change hard-coded address line numbers with defined
constant to enhance readability.
PR: 112710
Add a sysctl for the purge run interval so that it can
be tuned along with the rest of hostcache parameters.
The new sysctl name is `net.inet.tcp.hostcache.prune'.
Replace a constant with an already defined symbolic name for it.
- Implement the Marker Protocol for lacp
- Export the actor and partner peer info and show in ifconfig verbose
- Compare the partner system priority when choosing the aggregator.
- Cleanup whitespace, variable names and gc unused defines
Use the current user's login class for the decisions about where
the nologin(5) file is located and whether the user may bypass its
restriction.
Add some error checks.
Revision Changes Path
1.7 +16 -15 src/lib/libpam/modules/pam_nologin/pam_nologin.8
1.13 +42 -29 src/lib/libpam/modules/pam_nologin/pam_nologin.c
Note: To avoid POLA violation, the merged module still lets root
in irrespective of login.conf settings. In HEAD, root has to have
an explicit "ignorenologin" capability to bypass nologin(5).
PR: bin/107612
- Finally document the LOGIN_MECLASS hack in the manpage and comments.
- Fix login_getcaplist() prototype in the manpage.
- Improve the manpage markup.
- malloc M_NOWAIT -> M_WAITOK.
- Protect against divide by zero while calculating bus speed due to
possible broken kernel timecounter.
Reported/Tested by: silby
Revisions:
1.44 src/sys/dev/sound/pci/hda/hdac.c
1.8 src/sys/dev/sound/pci/hda/hdac_private.h
- Add codec id for Realtek ALC268.
- Add controller id for Intel 82801I (ICH9).
PR: kern/114399
Submitted by: Michael Fuckner <[email protected]>
- MSI support. Disable by default due to various issues with too many
broken hardwares. MSI can be enabled through device.hints(5) or
kenv(8) by setting "hint.pcm.%d.msi=1" (for RELENG_6, you need to
set/enable hw.pci.enable_msi=1).
Partially submitted by: kevlo
YAMAMOTO Taku <[email protected]>
Tested by: joel, kevlo, YAMAMOTO Taku
Add a new option for ppp.conf: rad_port_id. It allows to
change the way of what ppp submits to the RADIUS server
as NAS-Port-Id. Possible options are: the PID of the process
owning the corresponding interface, tun(4) interface number,
interface index (as it would get returned by if_nametoindex(3)),
or it's possible to keep the default behavior. Check the ppp(8)
manual page for details.
MFC ppp.8.m4 1.327:
Cleanup after previous commit.
PR: bin/112764
Submitted by: novel (myself)
Approved by: flz
named.conf. This brings us in line with BCP, and makes our
installed configuration usable as a local resolver right out
of the box.
This includes:
1.359 of etc/Makefile
1.5 of etc/namedb/Makefile
1.1 of etc/namedb/master/Makefile
all for the new files in etc/namedb/master,
1.23 and 1.24 of etc/namedb/named.conf to bring in the new
configuration options,
The new files in etc/namedb/master to support those options,
And deletion of the old *localhost*.rev files.
See the commit message to HEAD and the comments in the new
named.conf file for more details about the changes and the
reasons for them.
New sysctl: "hw.snd.compat_linux_mmap" to allow PROT_EXEC page
mapping, due to recent changes in linux compatibility layer which
require it. All linux applications that using sound + mmap() (mostly games)
require this to be enabled. Disabled by default.
- linuxulator mmap handling
- memleak fixes
- extend linux errno mapping
- handle address space limits for linux processes
- sync linprocfs (/proc/sys/... part)
Compile tested by: scf (i386, as part of a mega-MFC-patch)
Tested by: Arno J. Klaassen <[email protected]> (amd64)
- don't limit number of syscalls to 255
- handle more socket options
- bug-/compatibility-fixes to linux
* file related (includes fixes which prevent creation of strange files
which can only be removed with a fsck)
* make ping work
* ...
- add devfs to the file system type handling/translation
Compile tested by: scf (i386, as part of a mega-MFC-patch)
Tested by: Arno J. Klaassen <[email protected]> (amd64)
- In preparation of further linuxulator fixes MFC kern_descrip.c rev 1.296 and
syscallsubr.h rev 1.41 by jhb:
Add a kern_close() so that the ABIs can close a file descriptor w/o having
to populate a close_args struct and change some of the places that do.
Tested by: scf (i386, as part of a mega-MFC-patch),
Arno J. Klaassen <[email protected]> (amd64)
- some linuxulator style(9) fixes
- add datatypes and definitions in preparation of further commits
- use one (l_sigval) of the new datatypes on amd64 and get rid of a now unused
include (this may or may not fix some signal handling issues on amd64) [1]
- convert some unconditional debug handling into the common linuxulator way
- use some more appropriate format string types in some debug printf's
- convert signal validation into a macro
Except for [1] on amd64 there is no visible change to a normal user.
Tested by: scf (i386), Arno J. Klaassen <[email protected]> (amd64)
- easy linuxulator style(9) fixes (easy = hand removal of non-style code
change sections in a full diff)
Tested by: scf (i386), Arno J. Klaassen <[email protected]> (amd64)
MFC v 1.204 ata-disk.c
Add Viking Interworks 256MB as an ata device; this might give
some false positives but at this moment it is better to add
support then to dont have it at all (comment from Soren).
PR: kern/111516
Submitted by: Thomas Nystrom <thn at saeab dot se>
Approved by: re (kensmith)
Approved by: imp (mentor)
OK'ed by: sos (With the comment noted above about false
positives).
Approved by: imp (mentor,implicit)
-n is used by newfs to tell "do not generate a .snap directory" instead of
specifying rotational-positions, reflect that in the command arguments.
PR: bin/110178
Submitted by: Alex Kozlov <spam at rm-rf dot kiev dot ua>
Approved by: imp (mentor)
Approved by: imp (mentor, implicit)
in_ifdetach() calls in_delmulti_ifp().
The code now *really* deletes the elements in in_multihead
for the ifp that's going away (rather than just decrementing
the reference count). Previously we were left with inm and
ifma structures containing bogus ifnet pointers after
destroying an interface that had more than one IP4 assignment
made to it in it's lifetime.
I've also added a if_delmulti_ent() to make deleting known
ifma structures possible rather than depending on
if_findmulti() to end up finding the same thing. It
will in fact always find the correct ifma *unless* the
passed sockaddr has a bogus sa_len of zero.
Finally, when adding a multicast address, we no longer
increment the refcount (well, we do, but then we decrement
it again). The refcount here is in fact bogus so hopefully
readers will see that now.
This code is going directly into -stable as it has been
rewritten in -current and those changes are deemed too
intrusive for -stable consumption right now.
Reviewed by: bms
With this change, libarchive source in -CURRENT and 6-STABLE
is exactly identical. The only difference is the
version number (1.9 for 6-STABLE, 2.2 for -CURRENT) and
SHLIB_MAJOR (2 in 6-STABLE, 4 in -CURRENT). The
source has conditionals to compile the old libarchive 1
API/ABI or the newer libarchive 2 API/ABI depending on
the version number set at compile time.
This is identical to libarchive 2.2.3 from -CURRENT, with
all of the performance improvements, bug fixes, and new
formats, except that:
* archive_read_finish() and archive_write_finish() don't return errors
* archive_write_data() has a different return type
* user-provided skip callbacks have a slightly different signature
These differences maintain ABI compatibility with libarchive 1.3.1
(hence the "1" in "1.9") and allows libarchive 1.9 to have the
same SHLIB_MAJOR and otherwise serve as a straight replacement
for libarchive 1.3.1 (only better).
Thanks to: Many, many people who contributed error reports, bug fixes,
and suggestions over the last three years. ;-)
Do not attempt to enable AHCI mode on ALi SATA controllers other
than the 5288.
It is not correctly implemented in earlier silicon, and the BIOS often
lies about AHCI capability on platforms where these chips are deployed.
With this change I am able to boot FreeBSD on the ASUS Vintage AH-1
barebones system.
Approved by: sos
Revisions:
1.43 src/sys/dev/sound/pci/hda/hdac.c
1.7 src/sys/dev/sound/pci/hda/hdac_private.h
- Fix input/microphone support for ASUS A8N-VMCSM series.
Submitted by: Simon Schubert <[email protected]>
- Defer flushing unsolicited response into taskqueue thread rather
than handle it directly in interrupt handler, since few of its
operations (like measuring/calibrating jack impedance) are quite
expensive.
- Misc. debugging cleanups.
Tested by: joel
Fix no-sound issues with ASUS A9T notebook.
Note: The offending quirk should have been made model/codec specific,
but since there were no records / log which model requires it, the quirk
logic had to be inverted (blacklist instead of whitelist).
Tested by: Arkadiy Dudevitch <[email protected]>
Fix Rocketport so that it does not crash the system when a device pointer
changes for example:
(From Craig Leres):
tip to a rocketport line
run "/etc/rc.d/devfs restart"
exit tip
(wait for the system to reboot)
Thanks to Robert Watson for poking me to fix this.
PR: kern/109152
Approved by: imp (mentor)
Approved by: re (kensmith)
Reviewed by: jhb
Submitted by: Craig Leres <leres@ee dot lbl dot gov>
Approved by: imp (mentor, implicit)
correctly return an error if M_NOWAIT is passed to sblock() and the
operation might block. This remarkably subtle macro bug appears to
be responsible for quite a few undiagnosed socket buffer corruption
and mbuf-related kernel panics.
This bug has already been fixed in 7-CURRENT as part of the move to
using sx(9) locks to serialize simultaneous socket I/O, but is an
MFC candidate for all earlier FreeBSD -STABLE branches.
MFC after: 2 weeks
Found by: Isilon
Submitted by: jeff
Tested by: jhb, Yahoo!
Correct corrupt read when the read starts at a non-aligned offset.
PR: kern/77234
Approved by: imp (mentor)
Requested by: many many people
Submitted by: Andriy Gapon <avg at icyb dot net dot ua>
Approved by: imp (implicit, mentor)
- switch adapter and port lock over to using sx so that resources
can be allocated atomically
- add debug macros for printing lock initialization / teardown
- add buffers to port_info and adapter to allow each lock to have a
unique name
- destroy mutexes initialized by cxgb_offload_init
- remove recursive calls to ADAPTER_LOCK
- move callout_drain calls so that they don't occur with the lock held
- ensure that only as many qsets as are needed are initialized and
destroyed
Sponsored by: Chelsio Inc.
Fix a (very) longstanding bug in moused(8) affecting high-resolution
rodents when linear acceleration (-a) was enabled with a <1 value to
slow them down.
Previously, rounding errors would eat small movements so the mouse
had to be moved a certain distance to get any movement at all. We
now calculate the rounding errors and take them into account when
reporting movement.
Submitted by: Oliver Fromme <olli -at- lurza.secnetix.de>
amd64 including:
- Add 32-bit wrappers for thr_new(), thr_suspend(), and the umtx system
calls.
- Add support to amd64 for constructing thread upcalls for 32-bit
processes.
- Leave %fs and %gs alone in the signal trampoline for 32-bit processes on
amd64.
- Add 'casuword32()' to amd64 and ia64.
Tested by: emaste
Document the SENDMAIL_ALIASES, SENDMAIL_MAP_SRC, SENDMAIL_MAP_TYPE, and
SENDMAIL_START_SCRIPT
.Xr make.conf 5
variables.
These are used in
.Pa /etc/mail/Makefile .
PR: conf/40548
Revision Changes Path
1.140 +40 -0 src/share/man/man5/make.conf.5
- switch over to standard method for initializing cdevs (contributed by scottl@)
- break out timer_reclaim_task to be per-port
- move msix teardown into separate function
- fix bus_setup_intr for msi-x for the multi-port case so that msi-x resources
are not corrupted on unload
- handle 10/100/1000 base-T media and auto negotiation
- bind qset to cpu even for singleq case
- white space cleanups
- remove recursive PORT_LOCK
- move mtu setting to separate function
- stop and re-init port when changing mtu
- replace all direct references to m_data with calls to mtod
- handle attach failure better by not trying to de-initialize
taskqueues when they have not been allocated
- no longer default to jumbo frames
- fix gcc-4.2 signedness compile errors
Sponsored by: Chelsio Inc.
/etc/rc.d/sendmail whether or not to run newaliases if the database
is missing or the aliases text file is newer than aliases.db.
In my opinion, the aliases file should never be automatically rebuilt.
The current text form could represent a work in progress. Therefore,
in FreeBSD 7.0, this new option will default to "NO". When this rc.d
change is MFC'ed, it will need to remain "YES" to maintain backward
compatibility.
PR: conf/86252
Approved by: re (kensmith)
MFC after: 3 days
Revision Changes Path
1.316 +1 -0 src/etc/defaults/rc.conf
1.17 +10 -8 src/etc/rc.d/sendmail
1.1039 +6 -0 src/release/doc/en_US.ISO8859-1/relnotes/article.sgml
- Added MSI (hw.bce.msi_enable) sysctl
- Fixed kernel panic when MSI is used and module is unloaded
- Added several new debug routines
- Removed slack space for RX/TX chains since it only covers sloppy coding
- Fixed a potential problem when programming jumbo MTU size in hardware
- Various other comment changes
- Added 2.5G support for BCM5708S
which support a 2.5Gbps mode over fiber using next page extensions during
autonegotiation. Typically only found in blade systems which also include
a Broadcom 2.5Gbps capable switch.
1.59-1.62: already merged
1.63: removal of bridge(45) not merged
1.64: already merged
1.65: use uintmax_t
1.66: repair formatting to 79 columns
1.67: increase accuracy of timeouts and thus of per-interval counts
1.68: style fixes
Requested by: kuriyama (1.66)
1.66 changes the whitespace in output. Hopefully nothing depends on the
exact misformatting that it fixes.
s_cbrt.c 1.8-1.14
s_cbrtf.c 1.8-1.17
Many significant optimizations and expansions of comments. Not so many
significant fixes for accuracy. Several different algorithms are used,
with some appearing only in intermediate versions.
s_rint.c 1.12-1.13: one significant fix and one simplification.
s_rintf.c 1.10: one significant fix
The history is confusing. The fix was supposed to be in s_rintf.c 1.9,
but that missed the double version and was buggy for the float version.
k_cos.c 1.9-1.10
k_sin.c 1.9-1.10
k_tan.c 1.11-1.12
s_cos.c 1.10
s_sin.c 1.10
s_tan.c 1.10
Small optimizations and smaller fixes and cleanups for cos(), sin()
and tan() based on work on the float versions.
This goes with optimizing and debugging cosf(), sinf() and tanf(). This
is an internal API change. Hopefully nothing outside of libm abuses
libm's internals. Especially this internal, since it should never have
existed and had large bugs.
src/lib/ncurses/form/Makefile 1.14
src/lib/ncurses/menu/Makefile 1.16
src/lib/ncurses/ncurses/Makefile 1.90
src/lib/ncurses/panel/Makefile 1.15
- When I introduce wide character enabled ncurses into base, all headers
are installed twice (once in non-widec version, onec in widec version).
Headers with widec enabled are compatible with non-widec version
for libraries. However, if you do a repeat build/install, the curses.h
is always overwritten. The reason is that headers and statics libraries
are installed with -C option to preserve their mtime if no actual changes,
which saves time when doing incremental builds. The curses.h is installed
by non-widec ncurses first, then by widec ncurses. So next time, it happens
again. You see something like this:
# pwd
/usr/src/lib/ncurses
# make -s installincludes INSTALL="install -v"
===> ncurses (installincludes)
install: curses.h -> /usr/include/curses.h
===> ncursesw (installincludes)
install: curses.h -> /usr/include/curses.h
# make -s installincludes INSTALL="install -v"
===> ncurses (installincludes)
install: curses.h -> /usr/include/curses.h
===> ncursesw (installincludes)
install: curses.h -> /usr/include/curses.h
The solution is to disable installing headers in non-widec version. Now
you see this:
# pwd
/usr/src/lib/ncurses
# make -s installincludes INSTALL="install -v"
===> ncurses (installincludes)
===> ncursesw (installincludes)
# make -s installincludes INSTALL="install -v"
===> ncurses (installincludes)
===> ncursesw (installincludes)
For form/panel/menu libraries, the headers are the same for both version.
To be consistent with ncurses, I also disable the installation in non-widec
version.
Reported by: des
Reviewed by: ru
Thanks to: ru
Approved by: delphij (mentor)
e_lgammaf_r.c 1.8-1.9
e_rem_pio2f.c 1.8-1.19
k_cosf.c 1.8-1.15
k_rem_pio2f.c 1.8
k_sinf.c 1.8-1.13
k_tanf.c 1.9-1.20
math_private.h 1.19-1.20
s_cosf.c 1.8-1.15
s_sinf.c 1.8-1.14
s_tanf.c 1.8-1.14
Many significant optimizations and bug fixes for cosf(), sinf() and tanf().
For lgammaf_r(), no direct optimizations, one significant bug fix, and keep
up with API changes in cosf() and sinf() internals.
This involves internal API changes. Hopefully nothing outside of libm
abuses libm's internals.
b_log.c 1.8, b_tgamma.c 1.7, mathimpl.h 1.6: fix aliasing bugs in TRUNC()
and move its definition to mathimpl.h.
b_tgamma.c 1.8-1.9: document and fix tgamma() on some special args, and
clean up.
mathimpl.h 1.7: clean up.
Revision:
1.39 src/sys/dev/sound/pci/hda/hdac.c
- Add codec id for ALC660 [1]
- Add codec id for AD1988B, along with fixing its line-in and other
issues (with proper quirks). [2]
Submitted by: [1] [email protected]
[2] Oliver Brandmueller [email protected]
Revisions:
1.13 src/sys/dev/sound/pci/envy24.c
1.2 src/sys/dev/sound/pci/envy24.h
1.13 src/sys/dev/sound/pci/envy24ht.c
1.5 src/sys/dev/sound/pci/envy24ht.h
1.6 src/sys/dev/sound/pci/spicds.c
1.4 src/sys/dev/sound/pci/spicds.h
Bring in a bunch of bug fixes and some code to support more chipsets.
Neither me nor Joel have access to any of this hardware, so all tests
have been made by Konstantin and Artem. Commit message mostly written
by Konstantin.
envy24:
- Add test code to support rear line-in input on 'Terratec DMX 6fire'
audio card. This code is also intended to be used in the future for
support of cards, that have I2C-to-GPIO expanders wired between the
control line of the audio codec and the Envy24, however such cards
are too complex and i can't add that support without hardware sample
of such board, i've already tried and failed.
envy24ht:
- Add support for 'AudioTrak Prodigy HD2'.
- Add support for 'AudioTrak Prodigy 7.1 XT'.
- Add support for 'ESI Juli@' (Works ok, DAC volume is hard-coded for
the time being, so 'mixer vol ...' doesn't work, only 'mixer pcm
...' works). [1]
- Fix bug in the init data for M-Audio Revolution 5.1, that
results in distorted sound.
- Add software volume control (now 'mixer pcm' works, thanks to Ariff).
- Add support for more samples rates - 176.4kHz and 192kHz.
- Fix problem with the 192kHz samples rate playback when 24.576MHz
crystal is used on the board instead of 49.152MHz crystal.
spicds:
- Add support for Asahi Kasei flagship DAC - AK4396 (used in AudioTrak
Prodigy HD2).
Submitted by: Konstantin Dimitrov <[email protected]>
Tested by: Artem Antonov [1]
cleanup about the reassembly structures and routine:
- removed unused structure members
- fixed a minor bug that the ECN code point may not be restored correctly
Approved by: ume (mentor)
src/sys/netinet6/frag6.c: 1.31
src/sys/netinet6/ip6_var.h: 1.38
rev. 1.11 of src/sys/geom/geom_vfs.c
rev. 1.516 of src/sys/kern/vfs_bio.c
rev. 1.35 of src/sys/nfs4client/nfs4_vnops.c
rev. 1.272 of src/sys/nfsclient/nfs_vnops.c
rev. 1.195 of src/sys/sys/buf.h
rev. 1.18 of src/sys/sys/bufobj.h
rev. 1.73 of src/sys/ufs/ffs/ffs_extern.h
rev. 1.133 of src/sys/ufs/ffs/ffs_snapshot.c
rev. 1.324 of src/sys/ufs/ffs/ffs_vfsops.c
Avoid dealing with buffers in bdwrite() that are from other side of
snaplock divisor in the lock order then the buffer being written. Add
new BOP, bop_bdwrite(), to do dirty buffer flushing for same vnode in
the bdwrite(). Default implementation, bufbdflush(), refactors the code
from bdwrite(). For ffs device buffers, specialized implementation is
used.
This commit changes KPI/KBI, thus recompilation of out of tree kernel
modules is required.
Approved by: re (kensmith)
rpcbind.c: rev. 1.15, 1.16, 1.17
rpcbind.8: rev. 1.10
1)Make it possible for rpcbind(8) to bind TCP listening socket to an IP
other than INADDR_ANY.
2) Add the -6 option to specify "IPv6 only".
PR: 84494, 1122566
1.200 sbin/ipfw/ipfw.8, 1.104 sbin/ipfw/ipfw2.c
1.110 sys/netinet/ip_fw.h, 1.164 sys/netinet/ip_fw2.c
Add support for filtering on Routing Header Type 0 and
Mobile IPv6 Routing Header Type 2 in addition to filter
on the non-differentiated presence of any Routing Header.
Make it possible that carpdetach() unlocks on return. Then, in
carp_clone_destroy() we are on a safe side, we don't need to
unlock the cif, that can me already non-existent at this point.
Reported by: Anton Yuzhaninov <citrin rambler-co.ru>
support and makes MegaCli work on amd64. Scott supplied patches
to make the ioctl commands not block the controller. MegaCli
still has some issues with our emulation and create some bogus
commands so flashing doesn't work.
This should loosely resolve 113232. We were waiting on some other
fixes to go into -current before migrating this to -stable.
PR: 113232
Submitted by: scottl
- Updated copyright date to 2007.
- Tested with BCM5706 A3.
- Added ID for BCM5708 B2.
- Removed unused driver version string.
- Modified BCE_PRINTF macro to automatically fill-in the sc pointer.
- Fixed a kernel panic when the driver was loaded as a module from the
command-line because the MII bus pointer was null (i.e. the MII bus
hadn't been enumerated yet).
- Added fix proposed by Vladimir Ivanov <[email protected]> to prevent
driver state corruption when releasing the lock during the ISR in
bce_rx_intr() to send packets up the stack.
- Added new TX chain and register read sysctl interfaces for debugging.
- Cleaned up formatting for various other debug routines.
- Added a new statistic maintained by firmware which tracks the number
of received packets dropped because no receive buffers are available.
Simmilar, but different treatment:
Insert NULL pointer checking around devclass_get_maxunit(pcm_devclass, ..) .
Things can get ugly without it due to uninitialized class.
err.. perhaps we should teach devclass_get_maxunit() to return -1 ?
moused.8 rev 1.60 and rev 1.61
Makefile rev 1.9
Add dynamic acceleration to moused(8). This introduces a '-A' flag to
control the acceleration algorithm. It can be used together with the '-a'
flag for regular acceleration. [1]
Convert macros to use C99's syntax for macros with a variable number of
arguments.
Markup fixes to moused(8).
Submitted by: Oliver Fromme <olli -at- lurza.secnetix.de> [1]
Behind on MFCs: philip
The TCP checksum offload handling in the 8111B/8168B and 8101E PCIe can
apparently be confused by short TCP segments that have been manually
padded to the minimum ethernet frame size. The driver does short frame
padding in software as a workaround for a bug in the 8169 PCI devices
that causes short IP fragments to be corrupted due to an apparent
conflict between the hardware autopadding and hardware IP checksumming.
To fix this, we avoid software padding for short TCP segments, since
the hardware seems to autopad and checksum these correctly (even the
older 8169 NICs get these right). Short UDP packets appear to be
handled correctly in all cases. This should work around the IP header
checksum bug in the 8169 while not tripping the TCP checksum bug in
the 8111B/8168B and 8101E.
PR: 112089
- Fix a mbuf leak where sc_start fails or the protocol is none.
- packets on the input interface were counted twice
- Use IFQ_HANDOFF instead of rolling our own
rev. 1.438 of sys/kern/vfs_syscalls.c,
rev. 1.77 of sys/sys/filedesc.h:
Mark the filedescriptor table entries with VOP_OPEN being performed for them
as UF_OPENING. Disable closing of that entries. This should fix the crashes
caused by devfs_open() (and fifo_open()) dereferencing struct file * by
index, while the filedescriptor is closed by parallel thread.
RELENG_6 testing by: Mark Kane <mark at mkproductions org>
* Fix possible integer overflow during speed calibration. Delay final
initialization (pcm_setstatus) after calibration finished.
PR: kern/100169
Tested by: Kevin Overman <[email protected]>
* Fix (or rather workaround) Intel 440MX Errata #36
- http://www.intel.com/design/chipsets/specupdt/245051.htm
AC97 Soft Audio and Soft Modem Master Abort Errata
Issue:
Use of either soft audio or soft modem on an Intel® 82443MX PCISet
based platform running a 100 MHz Processor System Bus and an AC97 codec
may result in failures. The system continues to function normally while
the AC97 hardware may not resume and may require a cold-boot to
recover. As a result of the failure, the Master Abort Status bit will
be set in the audio or modem function PCI header space.
Workaround:
Force uncacheable DMA on both BDL and pcm buffers.
Tested by: Emil Holmstr|m <[email protected]>
- add some performance improvements for small packet workloads
- Double the number of descriptors that a single call to send can use
- Quadruple the number of descriptors that can be reclaimed per pass
- only run reclaim twice per second
- increase coalesce timer from 3.5us to 5us
- set OACTIVE so interface doesn't stall when the ring fills
Sponsored by: Chelsio Inc.
: Add a pfsync_syncpeer option to /etc/defaults/rc.conf and rc.conf(5),
: which can be used to turn off multicast pfsync support, and enable
: the transmission of directed PFSYNC (IP protocol: 240) packets to
: a specific "sync peer" host.
:
: PR: conf/111225
: Submitted by: Bas van Beek <[email protected]>
: Approved by: mtm, mlaier
: MFC after: 2 weeks
:
: Revision Changes Path
: 1.314 +1 -0 src/etc/defaults/rc.conf
: 1.5 +6 -1 src/etc/rc.d/pfsync
: 1.323 +20 -0 src/share/man/man5/rc.conf.5
- Disabled responding to NI queries from a global address by default as
specified in RFC4620. A new flag for icmp6_nodeinfo was added to enable the
feature.
- Also cleaned up the code so that the semantics of the icmp6_nodeinfo
flags is clearer (i.e., defined specific macro names instead of using
hard-coded values).
Approved by: gnn (mentor)
src/sys/netinet/icmp6.h: 1.21
src/sys/netinet6/icmp6.c: 1.76
src/sys/netinet6/in6_proto.c: 1.43
a 64-bit process exec'd by a 32-bit process doesn't end up with 32-bit
limits.
This doesn't break the ABI as neither of the 32-bit ABIs (COMPAT_LINUX32
and COMPAT_IA32) are buildable as modules on 6.x/amd64 and none of the
other ABIs use this hook.
* Add missing '${BASEDIR}/'s, thereby fixing problems when the "-b basedir"
option is used.
* Don't add new kernel modules into a non-existent kernel directory.
* Remove files before the directory which contains them.
sys/sys/socket.h ver. 1.93
lib/libc/net/rthdr.c ver. 1.9
----------------------------
date: 2007/04/19 15:48:16; author: mtm; state: Exp; lines: +4 -2
Make inet6_rth_* family of functions more compliant with RFC3542:
1. CMSG_NXTHDR(mhdr, cmsg) is supposed to dereference cmsg and return
the next header in the chain. If cmsg is NULL it should return
the first header, behaving essentially like CMSG_FIRSTHDR().
2. inet6_rth_(space|init|add) should do basic checking on their input
to verify that the number of headers (segments) is
between 0 and 127 inclusive.
date: 2007/04/19 15:41:00; author: mtm; state: Exp; lines: +68 -19
o Increase the buffer to hold extra headers to 10240 bytes (the minimum
according to RFC3542 sec. 20.1) and allocate it dynamically.
o In verbose mode, specify a warning if any control data from recvmsg(2)
was truncated because the buffer was too small.
o When printing the extra headers make sure not to overrun the buffer
boundaries.
PR: kern/99425
New release notes:
- axe(4) altq support
- pw -M
- twa(4) update to 3.60.03.006
- ftpd(8) RFC2389 and RFC2640 support
- lagg(4)
- snd_hda
- snd_envy24 / envy24ht
- snd_spicds
- mpt(4) updates
Modified release notes:
- small fixes in the top -j entry
Markup fixes.
MFC 1.44:
Expand documentation for LD_TRACE_LOADED_OBJECTS_FMT? variables
MFC 1.45:
Remove %m formatter, it's ifdef 0'ed in the code from the very beginning
----------------------------
revision 1.6
date: 2007/04/12 08:39:13; author: ceri; state: Exp; lines: +2 -2
Bump .Dd for r1.5; fix grammatical problem.
----------------------------
revision 1.5
date: 2007/04/12 08:35:58; author: mtm; state: Exp; lines: +18 -1
Specify the correct way to modify this file, and warn that the
user should not depend on the internal variables documented in
this man page.
----------------------------
revision 1.30
date: 2007/04/12 08:17:56; author: mtm; state: Exp; lines: +2 -7
o Use the uidstart variable instead of uuid (bug #3)
o Actually save the variable to adduser.conf (bug #2)
o (bug #1 to be fixed in an upcomming commit to adduser.conf.5)
----------------------------
revision 1.29
date: 2007/04/12 07:38:26; author: mtm; state: Exp; lines: +13 -12
Errm... I don't see how rev. 1.26 could have possibly worked or been tested.
Fix it for real.
Submitted by: Johnny Lee <[email protected]>
(atapi_action, case XPT_SCSI_IO): Enable DMA only for READ and WRITE commands
as some combinations of chipset, controller and target do not behave
correctly when DMA is enabled for other commands.
PR: kern/103602
date: 2007/04/02 15:38:53; author: mtm; state: Exp; lines: +1 -1
Instead of directly sourcing the firewall script, run it in a separate shell.
If the firewall script is sourced directly from the script, then any
exit statements in it will also terminate the rc.d script prematurely.
PR: conf/78762
date: 2007/03/30 18:36:45; author: mtm; state: Exp; lines: +1 -0
Some rc.d commands (such as stop|restart etc.) won't automagically work
if we don't explicitly set the name of the executable program.
PR: conf/104408
o introduce a flags 'errata' for HW bugs onto the softc.
o remove errata_a0 and introduce the corresponding flags into 'errata'.
o introduce a new errata for K8, namely some platform might set the
PENDING_BIT but aren't able to unset it, also don't loop forever
waiting PENDING_BIT being cleared.
o try to introduce a workaround for the PENDING_BIT stuck problem,
o support now half multipliers for K8.
Tested by: Abdullah Al-Marrie
Approved by: njl
Allright you rightist.. here we go.
Add support for Intel High Definition Audio Controller.
This driver make a special guarantee that "playback" works
on majority hardwares with minimal or without specific vendor
quirk.
This driver is a product of collaborative effort made by:
Stephane E. Potvin <[email protected]>
Andrea Bittau <[email protected]>
Wesley Morgan <[email protected]>
Daniel Eischen <[email protected]>
Maxime Guillaud <[email protected]>
Ariff Abdullah <[email protected]>
....and various people from [email protected]
Refer to snd_hda(4) for features, issues and various tricks.
P L E A S E avoid (not that I forbid it) using send-pr, since many
problems can be solved (and was solved) quicker and easier through
various help channels, notably freebsd-multimedia or even better,
#freebsd-azalia @ irc.freenode.net.
Welcome To HDA.
Requested by: Everybody
Sponsored by: Defenxis Sdn. Bhd.
Envy24/HT and related dependency, spicds (as of current state).
From the original commit log (by netchild):
dd the envy24 driver as is to the tree. It's not connected to the build
yet. More commits to follow.
I got no response from the author, but since the driver is BSD licensed
I don't think he will complain. :-)
I got it from http://people.freebsd.org/~lofi/envy24.tar.gz
Written by: Katsurajima Naoto <[email protected]
Konstantin Dimitrov <[email protected]>
Various fixups, especially for the upcomming High Definition Audio
commit.
1) sys/dev/sound/pcm/sound.h
sys/dev/sound/pcm/channel.c
* Be more specific: SD_F_SOFTVOL -> SD_F_SOFTPCMVOL
2) sys/dev/sound/pcm/mixer.[ch]
* Implement
mix_setparentchild()
mix_setrealdev()
mix_getparent()
mix_getchild()
The purpose of these functions is implement relative volume
adjustment, such as to tie two or more mixer device into a
single logical device. Usefull for the upcoming HDA driver
and few AC97 codec where the master volume "vol" need to be
implemented using this logical manner.
3) sys/dev/sound/pcm/ac97.c
* ditto #1
sys/dev/sound/pcm/usb/uaudio_pcm.c
* ditto #1, hook "pcm" as logical child of "vol" if the real
control does not exist.
Change unp_mtx to supporting recursion, and do not drop the unp_mtx over
sonewconn() in unp_connect(). This avoids a race that occurs due to
v_socket being an uncounted reference, as the lock was being released in
order to call sonewconn(), which otherwise recurses into the UNIX domain
socket code via pru_attach, as well as holding the lock over a sleeping
memory allocation in uipc_attach(). Switch to a non-sleeping memory
allocation during UNIX domain socket attach.
This fix non-ideal in that it requires enabling recursion, but is a much
smaller change than moving to using true references for v_socket. The
reported panic occurs in unp_connect() following the return of
sonewconn().
Update copyright year.
Panic reported by: jhb
Tested by: jhb
Reduce the default number of header options that the IPv6 protocol
stack will process from 50 to 15. As this is a sysctl variable it
can be tuned up or down at the user/administrator's whim.
Work around GMAC hardware hang bug.
It seems that valid pause frames(Tx flow control) cause GMAC to hang
such that it resulted in watchdog timeout. As a work around don't
flush Rx MAC FIFO if we've received pause frames.
Disable TSO support.
Under certain circumtances, if TSO is active, Yukon II generates
corrupted IP packets. All corrupted IP packets I noticed were the the
last segmented packet in a TSO request. The corrupted packet resulted
in retransmission of the damaged packet which in turn decreased network
performance dramatically.
Unfortunately it seems that there is no way to workaround this bug
as TSO is completely handled in hardware. Disable TSO until we find a
working workaround or a new silicon revision that doesn't have this
hardware bug.
Honor link up/down state in stge_start().
While I'm here move MAC control settings to stge_link_task, a task
queue which handles link state and duplex/flow controls.
Add an additional MAC check to the UNIX domain socket connect path:
check that the subject has read/write access to the vnode using the
vnode MAC check.
Submitted by: Spencer Minear <spencer_minear at securecomputing dot com>
Obtained from: TrustedBSD Project
from HEAD to RELENG_6:
Move definition of UNIX domain socket protosw and domain entries from
uipc_proto.c to uipc_usrreq.c, making localdomain static. Remove
uipc_proto.c as it's no longer used. With this change, UNIX domain
sockets are entirely encapsulated in uipc_usrreq.c.
Remove UNIX domain socket raw socket support. This feature is documented
as being undocumented in Stevens, and was broken in 1997 during network
stack infrastructure work. It is the one remaining (and incorrect)
direct protocol reference to raw_usrreq.pru_attach; this is incorrect
because the raw socket code assumes that raw_uattach is called only after
the protocol has allocated a PCB.
Remove now unneeded ENOTCONN clause from SOCK_DGRAM side of uipc_send():
we have to check it regardless of the target address, so don't check it
twice.
Add additional comments to the top of the UNIX domain socket implementation
providing some high level pointers regarding the implementation.
Remove duplicate 'or'.
Submitted by: ru
Add two new unpcb flags, UNP_BINDING and UNP_CONNECTING, which will be
used to mark UNIX domain sockets as being in the process of binding or
connecting. Use these to prevent simultaneous bind or connect
operations by multiple threads or processes on the same socket at the
same time, which closes race conditions present in the UNIX domain
socket implementation since inception.
Add two new unpcb flags, UNP_BINDING and UNP_CONNECTING, which will be
used to mark UNIX domain sockets as being in the process of binding or
connecting. Use these to prevent simultaneous bind or connect
operations by multiple threads or processes on the same socket at the
same time, which closes race conditions present in the UNIX domain
socket implementation since inception.
Set UNP_CONNECTING when committing to moving ahead in unp_connect().
This logic was lost when merging the remainder of these changes in
1.178.
Reduce periods of simultaneous acquisition of various socket buffer
locks and the unplock during uipc_rcvd() and uipc_send() by caching
certain values from one structure while its locks are held, and
applying them to a second structure while its locks are held. If
done carefully, this should be correct, and will reduce the amount
of work done with the global unp lock held.
Tested by: kris (earlier version)
- Simplify tlabel handling.
- Remove unused fw_asybusy().
- Add a sysctl knob to disable cycle master mode and add some comments.
- Fix broken userland API for async packets.
- Fix typo in recv spd.
- Update state in fw_xferq_dorain() after removed from the send queue.
- Remove unnecessary 'goto err;".
- Improve asynchronous packet receive process.
Avoid unnecessary differences between the amd64 and i386
format strings.
MFC Revision 1.577 of pmap.c:
Use a different bitmask for superpages' base address so that it
doesn't conflict with the PG_PDE_PAT bit.
Remove stale KSE code.
MFC Revision 1.551:
In general, bits in the page directory entry (PDE) and the page table
entry (PTE) have the same meaning. The exception to this rule is the
eighth bit (0x080). It is the PS bit in a PDE and the PAT bit in a
PTE. This change avoids the possibility that pmap_enter() confuses a
PAT bit with a PS bit, avoiding a panic().
Eliminate a diagnostic printf() from the i386 pmap_enter() that serves
no current purpose.
MFC Revision 1.559:
Eliminate a comment that became stale after revision 1.540.
MFC Revision 1.575:
Finish the PG_NX support at the pmap level.
MFC Revision 1.582:
Eliminate the misuse of PG_FRAME to truncate a virtual address
to a virtual page boundary.
Acquiring smp_ipi_mtx on every call to pmap_invalidate_*() is wasteful.
For example, during a buildworld more than half of the calls do not
generate an IPI because the only TLB entry invalidated is on the calling
processor. This revision pushes down the acquisition and release of
smp_ipi_mtx into smp_tlb_shootdown() and smp_targeted_tlb_shootdown() and
instead uses sched_pin() and sched_unpin() in pmap_invalidate_*() so that
thread migration doesn't lead to a missed TLB invalidation.
Replace diagnostic printf()s by assertions. Use consistent style
for similar assertions.
MFC Revision 1.540
Introduce pmap_try_insert_pv_entry().
Use pmap_try_insert_pv_entry() in pmap_copy() instead of
pmap_insert_entry().
Eliminate the explicit low-memory checks in pmap_copy().
MFC Revision 1.544
Retire pmap_track_modified().
MFC Revision 1.555
Introduce the function pmap_enter_object().
MFC Revision 1.558 (in part)
Change pmap_enter_quick_locked() to fail rather than wait if it is
unable to allocate a page table page. Similarly, change
pmap_enter_quick_locked() to call pmap_try_insert_pv_entry() rather
than pmap_insert_entry().
Add an assertion that the object containing m_start is locked in
pmap_enter_object(). Remove a similar assertion from
pmap_enter_quick_locked() because that function no longer accesses
the containing object.
Remove a stale comment.
- s/jail id/jail ID/, acronyms should be in uppercase in general. Also,
it is written this way in jail(8).
Suggested by: brueffer
Approved by: delphij (mentor, implicit)
Fix a typo: argv -> argvp.
Rationale:
We are interested in the current (last) element of the argv array
there, not in its first element. [...]
Also add a comment that the argv array ends up null-terminated in
any case (it's due to the design of the for loop) as an answer to
a possible question why the whole argv isn't zero-filled.
(atapi_cb): Fix test for the presence of sense data. An incorrect condition
was being tested, which would result in a system hang in some configurations.
PR: kern/112119
- New pmap_mapdev_attr() function for amd64 and i386.
- pmap_mapdev() on i386 and amd64 uses UC now rather than WB.
- New pmap_mapbios()/pmap_unmapbios() functions to map firmware tables.
- New pmap_change_attr() function for amd64 and i386.
- Bump __FreeBSD_version.
o Changes to psycho_attach(): [1]
- Clear the PCI AFSR and status error bits as previous errors still
might be indicated.
- Set up the PCI control and diagnostic registers according to the
capabilities, workarounds, etc of/for specific revisions of the
supported bridges. This includes no longer setting Hummingbird-/
Sabre-specific bits in the PCI control register but preserving
what the firmware has initialized them to like OpenSolaris does.
Previously we were setting these bits according to the example in
the Sabre documentation, which I doubt is appropriate for all
Sabre based designs and especially not for Hummingbirds. This
also includes not enabling bus parking unless the firmware tells
us to.
- Set the PCI latency timer register as this isn't always done by
the firmware.
o Remove a redundant argument from psycho_set_intr() and in this
function check the return value of bus_setup_intr(). [2]
o Let psycho_setup_intr() return ENOMEM instead of 0 when it can't
allocate memory for the interrupt wrapper stub and EINVAL instead
of 0 if it can't find the interrupt vector in the interrupt map.
o Add a workaround for a bug of the Sabre-APB-combination where it
doesn't drain DMA write data for devices behind additional PCI-PCI
bridges underneath the APB PCI-PCI bridge. This workaround (do
things necessary in order to achieve a manual drain when coherency
is required) is currently implemented in psycho_setup_intr() and
psycho_intr_stub() due to lack of a real BUS_GET_DMA_TAG() and
psycho(4)-specific bus_dma_tag_create() and bus_dmamap_sync()
methods, respectively, in RELENG_6 and therefore is only applied
for interrupt handlers but not for polling(4) callbacks. [3]
o Fix some minor style issues.
Info from: OpenSolaris [1]
Info from: Linux, OpenBSD, OpenSolaris [3]
Suggested by: Coverity Prevent (CID 682) [2]
- Try to use the reset control register (I/O port 0xcf9) and the fast a20
and init register (I/O port 0x92) if the keyboard reset fails.
- Fix the triple fault to actually work when PGE is enabled.
New release notes:
- edsc(4) added
Modified release notes:
- ncurses was updated from version 5.2-20020615
- MSI-X supported as well, remove ref to pci(4) manpage, which is
different from the kernel's PCI code
- Patch for AD1981B codec to enable (automuting) headphone jack sense.
- Enable tone / 3D controls for YAMAHA YMF743, 753 and 752 (partially) [1]
- AC97 quirk / patch cleanups. Most quirks doesn't work in general sense
and should only be applied on certain specific card / vendor, hence the
addition of ac97_getsubvendor(). [2]
- Fix low volume issue on several MSI laptops through ALC655 quirk. [2]
[1]
PR: kern/109599
Submitted by: Watanabe Kazuhiro <[email protected]>
[2]
Reported/Tested by: Christian Mueller
<[email protected]>
pam_unix.c 1.52
pam_unix.8 1.13
In account management, verify whether the account has been locked
with `pw lock', so that it's impossible to log into a locked account
using an alternative authentication mechanism, such as an ssh key.
This change affects only accounts locked with pw(8), i.e., having a
`*LOCKED*' prefix in their password hash field, so people still can
use a different pattern to disable password authentication only.
Mention all account management criteria in the manpage.
PR: bin/71147
- Change the passing of callbacks to a struct in case this needs to be
extended in the future.
- Properly move the setting of bstp_linkstate_p to the bridgestp module.
Don't reinitialize the hardware if only PROMISC flag was changed.
Previously whenever PROMISC mode turned on/off link renegotiation
occurs and it could resulted in network unavailability for serveral
seconds.(Depending on switch STP settings it could last several tens
seconds.)
This was actually contained in the MPSAFE NFS client changes which is not
all being MFC'd, however, this fixes a bug in the previous fix to
nfs_flush().
Guidance from: mohans
- In nfs_flush(), clear the NMODIFIED bit only if there are no dirty
buffers *and* there are no buffers queued up for writing.
- Keep track of the number of in-progress async direct IO writes in the
nfsnode. Make fsync/close wait until all of these drain. Add a check to
nfs_getpage() and nfs_putpage().
Invalidate all TLBs and page structure caches that may reference a page
for page walk acceleration before releasing it to the free list.
This is required for CPUs implementing page structure caches as described
in the Intel application note:
"TLBs, Paging-Structure Caches, and Their Invalidation"
(Document Number: 317080-001)
to disable the processing of Route Header Type 0 options in IPv6.
This is not really an MFC because currently in HEAD the processing
of these options is disabled unilateraly pending discussion at the IETF
on the future of such headers.
Suggested By: itojun
Reviewed By: jinmei
When LK_NOWAIT is passed as argument to process_worklist_item(), this
does not prevent handle_workitem_remove() from recursing into a blocking
version. Add the dirrem to worklist instead of processing it now if this
is the case.
new file descriptor is closed out from under us in kern_open(). This race
is already handled and the file will be closed when kern_open() does an
fdrop just before returning.
In addition, by handling the race early, this opens the code up to an
obscure bug where opening a devfs file could replace f_ops in the file
object so that fdrop() will try to close the vnode, but f_vnode never gets
set, so the vnode close routine panics due to the NULL f_vnode.
Shorten text string for ip_fw2 dynamic rules zone by removing the word
"zone", which is generally not present in zone names. This reduces the
incidence of line-wrapping in "vmstat -z " using 80-column displays.
update. Unfortunately, this problem (the need to recompile filters) was
found after the MFC. The release engineering team has asked for this
instead of doing a full backout of sendmail 8.14 in the RELENG_[456]
branches.
Requested by: re (bmah)
Explain the change in sed behaviour WRT jumping over the 2nd address.
Add $FreeBSD$.
(Forgot to cvs up -j this file when doing MFC for the respective change
to the sed code.)
Don't forget to close the range if we branched over its end
and had no chance to match it by the 2nd address precisely.
Otherwise the unclosed range would bogusly extend to the end
of stream.
Add a regression test.
Explain the decision in the `POSIX' file.
1.44 src/usr.bin/sed/process.c
1.2-1.4 src/usr.bin/sed/POSIX
1.13 src/tools/regression/usr.bin/sed/regress.sh
1.1 src/tools/regression/usr.bin/sed/regress.b2a.out
Make the `c' function not forget to print the text in some cases.
Add respective regression tests.
1.42 src/usr.bin/sed/process.c
1.12 src/tools/regression/usr.bin/sed/regress.sh
1.1 src/tools/regression/usr.bin/sed/regress.c0.out
1.1 src/tools/regression/usr.bin/sed/regress.c1.out
1.1 src/tools/regression/usr.bin/sed/regress.c2.out
1.1 src/tools/regression/usr.bin/sed/regress.c3.out
Add missing newline to correct failure of the regression test.
According to IEEE Std 1003.1, 2004 "Whenever the pattern space is
written to standard output or a named file, sed shall immediately
follow it with a <newline>."
main.c 1.37:
Kill a prototype for the defunct inplace_edit().
process.c 1.41:
Make the comment for cspace() match reality.
process.c 1.43:
Put the MATCH() macro's value in parentheses for safety.
because support for the Alpha was removed from the HEAD of CVS just
before the introduction of pmap_enter_object(). I am adding
pmap_enter_object() to the Alpha because it allows for an efficient
solution to a race condition affecting pmap_enter_quick(). (See
sys/amd64/amd64/pmap.c revision 1.557.)
Add work around for hardware Tx checksum offload bug in Yukon II.
Yukon II generated corrupted TCP checksum for short TCP packets
that's less than 60 bytes in size(e.g. window probe packet, pure ACK
packet etc). Padding the frame with zeros to make the frame minimum
ethernet frame size didn't work at all. Instead of dropping Tx
checksum offload support we calculate TCP checksum with S/W method
when we encounter short TCP frames.
Fortunately it seems that short UDP datagrams appear to be handled
correctly by Yukon II.
While I'm here simplify ethernet/VLAN header size calculation logic.
PR: 111384
nfslocking: rev 1.12 [1] and 1.13 [2]
rc.conf.5: rev 1.321 [2]
rc.conf: 1.311 [2]
[1] Record rc.d/nfslocking dependency on rc.d/rpcbind
[2]Add rpc_statd_flags and rpc_lockd_flags options to allow
options to be passed to rpc.statd and rpc.lockd
PR: conf/105465 [1]
Approved by: mtm [1]
1.16: compile under WARNS=6
1.17: Make rpc.statd INET* indipendent by converting
sockaddr_in structures to sockaddr ones and using
svc_getrpccaller instead of svc_getcaller.
A similar patch was committed to rpc.lockd back in 2002 . [1]
PR: bin/42004 [1]
Fix setting of serial port speed. A junk value was passed in AX when
bioscom is called to set up serial port parameters because COMSPEED
was treated as an address instead of an immediate value, causing
serial port parameters to never be set.
PR: i386/110828
Fix for PR 82974. We were not checking that the route looked up in
the case of an RTM_CHANGE was specific, i.e. that it matched completely.
This led to a route change of a non-existent route changing the default
route as the radix code would simply back track to that point and hand
that route back to the routing socket code.
PR: 82974
Reviewed by: Tai-hwa Liang <[email protected]>
Ben Kaduk <[email protected]>
Bjoern A. Zeeb <[email protected]>
Obtained from: OpenBSD with modifications.
If we've encountered unrecognized chipset don't access hardware
anymore. Previously it tried to access interrupt register to disable
interrupts which could result in hang if the hardware was not
properly initialized by system BIOS/ACPI.
Log:
Add description how the filter works in case of multiple interfaces
with the same MAC.
PR: kern/109815
MFC after: 7 days
Submitted by: Eygene Ryabinkin
Glanced by: rik (all pointy hats are mine)
Discussed with: julian@, rik@
Log:
s/if_vlan/vlan/
Noted by: brueffer
Eliminate unneeded diagnostic code.
Change pmap_enter_quick() to use the vm_prot_t parameter introduced in
revision 1.179 to correctly set/clear execute permission on the mapping
it creates.
Eliminate an unneeded Instruction Memory Barrier (IMB) in
pmap_enter_quick().
Retire pmap_track_modified().
Try to silence Coverity by adding (void) in front of function call.
Also add a comment, explaining why return value is not being checked.
Requested by: netchild
1.528: Default to producing 'k8' COMPAT_32BIT bits, but allow override.
1.529: SSE2 comes thru the users choice of CPUTYPE.
1.531: Use cross-compile friendly spelling of CPUTYPE.
1.567: Clean the lib32 object directory with cleandir rather than rm -rf.
1.568: Resurrect one of the patches from attic and refine the
lib32 build somewhat. Specifically, instead of spamming
${CC} et al with -I${LIB32TMP}/usr/include which can be
harmful (as has been demonstrated by the ncursesw WIP),
use slightly different approach to achieve the same goal.
This also simplifies things a bit.
Approved by: delphij (mentor)
Add a sysctl net.link.tap.up_on_open which defaults to zero; when it
is non-zero, tap(4) instances will be marked IFF_UP on attach.
1.71 +6 -1 src/sys/net/if_tap.c
1.19 +8 -1 src/share/man/man4/tap.4
PR: 110383
Requested by: Frank Behrens
FC and SPI default set/get into separate functions. Also, stop looking
for interrupts at the end of isp_starts- this seems to send some 23XX
cards into the weeds.
Introduce the function pmap_enter_object().
MFC revision 1.562 (in part)
Change pmap_enter_quick_locked() to fail rather than wait if it is
unable to allocate a page table page. This prevents a race between
pmap_enter_object() and the page daemon. Specifically, an inactive
page that is a successor to the page that was given to
pmap_enter_quick_locked() might become a cache page while
pmap_enter_quick_locked() waits and later pmap_enter_object() maps
the cache page violating the invariant that cache pages are never
mapped. Similarly, change
pmap_enter_quick_locked() to call pmap_try_insert_pv_entry() rather
than pmap_insert_entry(). Generally speaking,
pmap_enter_quick_locked() is used to create speculative mappings. So,
it should not try hard to allocate memory if free memory is scarce.
Add an assertion that the object containing m_start is locked in
pmap_enter_object(). Remove a similar assertion from
pmap_enter_quick_locked() because that function no longer accesses the
containing object.
Remove a stale comment.
In general, bits in the page directory entry (PDE) and the page table
entry (PTE) have the same meaning. The exception to this rule is the
eighth bit (0x080). It is the PS bit in a PDE and the PAT bit in a
PTE. This change avoids the possibility that pmap_enter() confuses a
PAT bit with a PS bit, avoiding a panic().
Eliminate a diagnostic printf() from the i386 pmap_enter() that serves
no current purpose, i.e., I've seen no bug reports in the last two
years that are helped by this printf().
details see the relevant commit logs in HEAD. The notable differences
between this patch and what is in HEAD now are that pci_remap_msix() is not
currently implemented in this patch (I need to change the API in HEAD, so
I'm not going to MFC it until its API is stable) and MSI and MSI-X are not
enabled by default. To enable MSI and MSI-X support, one must set the
'hw.pci.msi_enable' and/or 'hw.pci.msix_enable' loader tunables.
include the opt_diver.h to get the banner massage right.
This brings ip_fw2.c up to date with -current with the exception of:
1.113, 114, 125, 126, 130, 138, 140, 152-156, 158-160
All of which I do not believe to be MFC candidates (with the
possible exception of 140 which has a risk factor I don't
want to put in RELENG_6). 138 is also a possibility but requires more work
in other files.
I need to do the userland ipfw too to add some new features, but, not today..
Revisit the watchdogs: Resetting the error to EINVAL after failing to set the
watchdog might hide the succesful arming of an earlier one. Accept that on
failing to arm any watchdog (because of non-supported timeouts) EOPNOTSUPP is
returned instead of the more appropriate EINVAL.
In IPv4 fast forwarding path, send ICMP unreachable messages for
routes which have RTF_REJECT set *and* a zero expiry timer.
PR: kern/109246
Submitted by: Ingo Flaschberger
(reinit_bus): When the ATAPI bus is reset, do not schedule an automated
CAM rescan if the ATAPI device entries have not changed.
The ATAPI bus may be reset for a variety of reasons, including any time an
ATAPI request times out. It is not necessary to rescan at the CAM level
in such a case, unless a device has appeared or disappeared, or has
otherwise changed.
---
MFC revs. 1.49 and 1.50:
(atapi_action): Improve error reporting by removing ATA_R_QUIET flag
from ATAPI requests. If CAM debugging is enabled, also mark ATAPI
requests with ATA_R_DEBUG flag.
(atapi_cb): Report ATAPI timeouts to the CAM layer.
Fix incorrect debugging traces in the presence of ATAPI errors.
PR: kern/103602
(ata_completed): When REQUEST SENSE is automatically issued after a failed
ATAPI request, do not clear the ATA_R_DEBUG flag. This allows a request
marked as requiring debug traces to produce these traces also during
the completion of the autosense processing.
The code looks for all the loaded screensaver modules, tries to
kldunload them, and only loads the new one if kldstat's output shows
that there aren't any left. However, the regexp looking for modules
to unload was still searching according to the the old naming scheme,
splash_<name>.ko, instead of <name>_saver.ko.
- bus_size_t for link_width is a bad cross-architectural type with
respect to printf, use uint32_t instead
- Increase coalesce_nsecs
- commit fixes for the following coverity warnings: 1765, 1760, 1758, 1756
- Check PCI-e link width to avoid foot shooting with 4x links
- allocate 9 messages in all cases
- move call to t3_prep_adapter earlier in attach before msi-x setup occurs
(this works around the fact that pci_config_{save,restore} doesn't adequately
restore state for msi-x)
- make MSI-X the default and allocate up to mp_ncpus queues per port
- Remove firmware version flags
- add support for the T3B2 ASIC rev by synchronizing with version 1.0.071 of
Chelsio's common code (with the notable exception of improvements for using
multiple TX queues)
Increase default size of raw IP send and receive buffers to the same as
udp_sendspace, to avoid a situation where jumbograms (datagrams > 9KB)
are unnecessarily fragmented.
Change the format strings in many of the assertions that were
recently converted from PMAP_DIAGNOSTIC printf()s so that they are
compatible with PAE. Avoid unnecessary differences between the
amd64 and i386 format strings.
MFC revision 1.549
Retire pmap_track_modified(). We no longer need it because we do
not create managed mappings within the clean submap. To prevent
regressions, add assertions blocking the creation of managed
mappings within the clean submap.
Replace diagnostic printf()s by assertions. Use consistent style for
similar assertions.
MFC revision 1.545
Remove stale KSE code.
MFC revision 1.580
Use FOREACH_PROC_IN_SYSTEM instead of using its unrolled form.
Introduce pmap_try_insert_pv_entry(), a function that conditionally
creates a pv entry if the number of entries is below the high water mark
for pv entries.
Use pmap_try_insert_pv_entry() in pmap_copy() instead of
pmap_insert_entry(). This avoids possible recursion on a pmap lock in
get_pv_entry().
Eliminate the explicit low-memory checks in pmap_copy(). The check that
the number of pv entries was below the high water mark was largely
ineffective because it was located in the outer loop rather than the
inner loop where pv entries were allocated. Instead of checking, we
attempt the allocation and handle the failure.
Add msk(4), a driver for Marvell/SysKonnect Yukon II Gigabit Ethernet
controller. Due to lack of documentation, this driver is based on the
code from sk(4) and Marvell's myk(4) driver for FreeBSD. I've also
adopted the OpenBSD interface name, msk(4) in order to reduce naming
differences between BSDs.
Acquiring smp_ipi_mtx on every call to pmap_invalidate_*() is wasteful.
For example, during a buildworld more than half of the calls do not
generate an IPI because the only TLB entry invalidated is on the calling
processor. This revision pushes down the acquisition and release of
smp_ipi_mtx into smp_tlb_shootdown() and smp_targeted_tlb_shootdown() and
instead uses sched_pin() and sched_unpin() in pmap_invalidate_*() so that
thread migration doesn't lead to a missed TLB invalidation.
Eliminate unnecessary invalidations of the entire TLB by pmap_remove().
Specifically, on mappings with PG_G set pmap_remove() not only performs
the necessary per-page invlpg invalidations but also performs an
unnecessary invalidation of the entire set of non-PG_G entries.
rik 2007-03-18 23:28:53 UTC
FreeBSD src repository
Modified files:
sys/net if_bridge.c
Log:
Give a chance for packet to appear with a correct input interfaces
in case of multiple interfaces with the same MAC in the same bridge.
This commit do not solve the entire problem. Only case where packet
arrived from such interface.
PR: kern/109815
MFC after: 7 days
Submitted by: Eygene Ryabinkin and rik@
Discussed with: bms@, thompsa@, yar@
Revision Changes Path
1.96 +50 -30 src/sys/net/if_bridge.c
date: 2007/03/16 03:50:53; author: delphij; state: Exp; lines: +9 -1
Mention a limitation that was inherted from RFC1952, making
it impossible to obtain correct file size from a file that
is larger than 4GB before compression.
PR: bin/110329
KERN_PROC_ALL produces a kinfo_proc for each thread in a process, which
caused fstat to produce duplicated output for threaded processes. Instead
use KERN_PROC_PROC to get just one kinfo_proc per process.
rev. 1.17
o style(9) fixes
rev. 1.18
o Add support code for newer Marvell PHYs.
o Remove unused static global variable e1000phy_debug.
o Take advantage of mii_phy_dev_probe().
o Use MII_ANEGTICKS/MII_ANEGTICKS_GIGE instead of magic number 5.
o Add IFM_NONE as e1000phy(4) supports it without issues.
o Nuke magic PHY programming sequence in PHY reset and follow correct
reset sequence. [1]
o Make manual media selection work for all supported media types.
o Don't set MIIF_NOISOLATE so e1000phy(4) can be used in
configurations with multiple PHYs.
o In 1000baseT, when setting the link manually, one side must be the
master and the other the slave. If LINK0 is set, program the PHY
to be a master, otherwise it's a slave.
o When we lost a link, reset mii_ticks immediately so it correctly
check number of seconds elapsed in autonegotiation phase.
o Announce link loss right after it happens.
o After kicking autonegotiation, report PHY status instead of
returning immediatly.
o When link state check is in progress, check auto negotiation
completion bit only when auto negotiation is enbaled.
o When PHY is resolved to a master, show it with IFM_FLAG2.
- Support for BCM5754/5755/5786/5787.
- Support for IPMI/ASF mode (disabled by default)
- Fix lots of bugs including style(9) nits.
Tested by: net, stable
- style(9) cleanup
- Use separate thread for servicing dummynet(4).
Utilize taskqueue(9) API.
- Convert
net.inet.ip.dummynet.curr_time
net.inet.ip.dummynet.searches
net.inet.ip.dummynet.search_steps
to SYSCTL_LONG nodes. It will prevent frequent wrap around on 64bit archs.
- Implement simple mechanics for dummynet(4) internal time correction.
Under certain circumstances (system high load, dummynet lock contention, etc)
dummynet's tick counter can be significantly slower than it should be.
(I've observed up to 25% difference on one of my production servers).
Since this counter used for packet scheduling, it's accuracy is vital for
precise bandwidth limitation.
Introduce new sysctl nodes:
net.inet.ip.dummynet.
tick_lost - number of ticks coalesced by taskqueue thread.
tick_adjustment - number of time corrections done.
tick_diff - adjusted vs non-adjusted tick counter difference
tick_delta - last vs 'standard' tick differnece (usec).
tick_delta_sum - accumulated (and not corrected yet) time
difference (usec).
- Use non-recursive mutex. MTX_RECURSE is unnecessary since rev. 1.70
- Pay respect to net.isr.direct: use netisr_dispatch() instead of ip_input()
- purge_flow_set():
Do not leak memory while purging queues which are not bound to pipe.
* Remove unused pathlen argument from write_entry function.
* Fix logic bug in deciding if do_chdir should be called.
* Don't consider an lstat(2) failure to be an error.
* Correct warning message when lstat(2) fails.
When dispatching frames saved on the power save queue to a
station exiting power save mode prepend them to the driver's
send q instead of appending them. This insures the packets
are not misordered wrt any packets already q'd for the station.
This corrects a problem noticed when using a VoIP phone talking
to an ath card in ap mode; the misordered packets caused noise.
Submitted by: "J.R. Oldroyd" <[email protected]>
by adding debug print statements I've come to the conclusion that too little
time is being allowed to pass between register updates. Increasing the DELAY
interval by a constant interval eliminates this issue on my hardware.
As suggested more than once in the lists, drop -M from flags to mfs
for /tmp and /var. This makes the memory discs swap-backed instead
of malloc-backed. A swap-backed memory disc should not be worse
than a malloc-backed one in any scenario because it will start
touching swap only when needed. OTOH, a malloc-backed disc can
starve limited kernel resources and evenually crash the system.
Reflect the change in the rc.conf(5) manpage. Also stop telling
lies there about softupdates: it does not waste disc space, it
just can delay its freeing.
src/etc/defaults/rc.conf 1.306
src/share/man/man5/rc.conf.5 1.317
Fix IP_SENDSRCADDR semantics.
* To use this option with a UDP socket, it must be bound to a local port,
and INADDR_ANY, to disallow possible collisions with existing udp inpcbs
bound to the same port on other interfaces at send time.
* If the socket is bound to INADDR_ANY, specifying IP_SENDSRCADDR with
INADDR_ANY will be rejected as it is ambiguous.
* If the socket is bound to an address other than INADDR_ANY, specifying
IP_SENDSRCADDR with INADDR_ANY will be disallowed by in_pcbbind_setup().
Reviewed by: silence on -net
Tested with: src/tools/regression/netinet/ipbroadcast
Comply with RFC 3927, by forcing ARP replies which contain a source
address within the link-local IPv4 prefix 169.254.0.0/16, to be
broadcast at link layer.
Reviewed by: fenner
Add "fg" option as antonym to "bg"; add "hard" option as antonym to "soft".
This is for better compatibility with other environments (Linux, Solaris,
HP-UX, AIX and Tru64 support these options).
PR: bin/109924
Fix long standing multi playback/recording issues, caused by
excessive interrupt clock timer reset, screwing interrupt generation
for already active channels. Track moving DMA pointer and call buffer
interrupt on each blocksize boundary.
PR: kern/109791
Disable RPC exponential back-off for FreeBSD.org systems (IE. hidden
behind _FREEFALL_CONFIG). This is done mainly to make NIS even more
resistant to packet loss.
This is not enabled by default for "normal" FreeBSD since it might cause
the server providing the RPC service to be hit heavily with RPC traffic
in case of problems. freefall.FreeBSD.org and hub.FreeBSD.org have been
running with a patch similar to this for a couple of weeks.
MFC after: 1 week
Discussed with: peter
- Bump _yplib_timeout limit from 10 to 20 seconds to better handle
packet loss when talking to a NIS server.
- Set 1 second retry timeout to further realistically handle UDP
packet loss for yp_next packet bursts. If the packet hasn't come
back within 1 second its rather unlikely to come back at all. There
is still back-off mechanism in RPC so if there is another reason
than packet loss for the lack of response within 1 second, the NIS
server will not be totally bombarded with requests.
This reduces the risk of NIS failing with:
yp_next: clnt_call: RPC: Timed out
considerably. This is mainly a problem if you have larger NIS maps
(like at FreeBSD.org) since enumerations of the lists will cause a UDP
packet bursts where a few packets being lost once in a while do
happen.
Discussed with: peter
Problem mainly diagnosed by: peter
Improve rc.d conformance:
- don't play a needless trick with prestart, just use start method;
- provide no-op stop method so that we don't get bogus "abi not running" error.
Syscons cannot be stopped, so provide a no-op stop method.
The default stop method from rc.subr isn't suited for this
case and produces a bogus warning: "syscons not running".
rev. 1.201 src/sys/kern/kern_prot.c
rev. 1.334 src/sys/kern/vfs_export.c
rev. 1.95 src/sys/nfsserver/nfs_srvsock.c
rev. 1.137 src/sys/nfsserver/nfs_srvsubs.c
rev. 1.53 src/sys/sys/ucred.h
rev. 1.273 src/sys/ufs/ufs/ufs_vnops.c
Use the refcount API to manage the reference count for user credentials
rather than using pool mutexes.
MFC changes:
The cr_mtxp field of struct ucred is preserved as padding to keep structure
size intact. nfs_srvsock.c change is nullified by rev. 1.96, that was MFCed
as rev. 1.94.2.2.
OKed by: jhb
LOR: 187
- Flesh out list of UART simple comms programming interfaces.
- Add list of PIC base peripheral programming interfaces.
- Add VPD capability register offsets.
Fix undirected broadcast sends for the case where SO_DONTROUTE has also
been set at the socket layer, in our somewhat convoluted IPv4 source
selection logic in ip_output().
IP_ONESBCAST is actually a special case of SO_DONTROUTE, as 255.255.255.255
must always be delivered on a local link with a TTL of 1.
If IP_ONESBCAST has been set at the socket layer, also perform destination
interface lookup for point-to-point interfaces based on the destination
address of the link; previously it was not possible to use the option with
such interfaces; also, the destination/broadcast address fields map to the
same field within struct ifnet, which doesn't help matters.
Reviewed by: andre
Fix a bug in if_findmulti(), whereby it would not find (and thus delete)
a link-layer multicast group membership.
Such memberships are needed in order to support protocols such as
IS-IS without putting the interface into PROMISC or ALLMULTI modes.
sa_equal() is not OK for comparing sockaddr_dl as it has deeper structure
than a simple byte array, so add sa_dl_equal() and use that instead.
Reviewed by: rwatson
Verified with: /usr/sbin/mtest
Bug found by: Jouke Witteveen
MFC after: 2 weeks
Add a 3rd entry in the cache, which keeps the end position
from just before extending a file. This has the desired effect
of keeping the write speed constant. And yes, that helps a lot
copying large files always at full speed now, and I have seen
improvements using benchmarks/bonnie.
Stolen from: NetBSD
Reviewed by: bde
advance __FreeBSD_version check for gensnmptree in the
list of bootstrap-tools.
This is needed for the upcoming MFC of snmp_bridge module,
which makes use of new features of gensnmptree.
Approved by: bz (mentor)
src/contrib/bsnmp/gensnmptree/gensnmptree.1, Revision 1.1.1.7
src/contrib/bsnmp/gensnmptree/gensnmptree.c, Revision 1.1.1.11
src/contrib/bsnmp/gensnmpdef/gensnmpdef.1, Revision 1.1.1.5
src/contrib/bsnmp/gensnmpdef/gensnmpdef.c, Revision 1.1.1.3
Vendor patch: add support for the BITS construct and enumerations in
both gensnmpdef and gensnmptree. Add include and typedef directives to
gensnmptree.
Approved by: bz (mentor)
OKed by: harti
Only match on log messages containing fail,invalid,
bad or illegal. This prevents matching on systems that
have a name that matches the query.
PR: conf/107560
Submitted by: Christian Laursen <cfsl at pil dot dk>
MFC after: 3 days
Approved by: imp (mentor)
Approved by: imp (mentor)
Fix the cdboot twiddle display.
I created and tested this with a custom FreeSBIE cd-image.
PR: i386/96452
Submitted by: Yuichiro Goto <y7goto at gmail dot com>
MFC after: 3 days
Approved by: imp (mentor)
Approved by: imp (mentor)
Do not dispatch SIGPIPE from the generic write path for a socket; with
this patch the code behaves according to the comment on the line above.
Without this patch, a socket could cause SIGPIPE to be delivered to its
process, once with SO_NOSIGPIPE set, and twice without.
With this patch, the kernel now passes the sigpipe regression test in
both HEAD and RELENG_6.
PR: 78478 (the bug fix for this PR introduced this bug)
Tested by: Anton Yuzhaninov
Reviewed by: jhb
In the output path, mask off M_BCAST|M_MCAST so as to prevent incorrect
addressing if a packet is later re-encapsulated and sent to a
non-broadcast, non-multicast destination after being received on the
ng_ksocket input hook.
These mbuf flags should not be set on the mbuf packet header chain until
the data thus sent re-enters ip_output() by way of the pru_sosend callback
anyway.
PR: 106999
Tested by: ume
Submitted by: Kevin Lahey
Implement ifnet cloning for tun(4)/tap(4).
Make devfs cloning a sysctl/tunable which defaults to on.
If devfs cloning is enabled, only the super-user may create
tun(4)/tap(4)/vmnet(4) instances. Devfs cloning is still enabled by
default; it may be disabled from the loader or via sysctl with
"net.link.tap.devfs_cloning" and "net.link.tun.devfs_cloning".
Disabling its use affects potentially all tun(4)/tap(4) consumers
including OpenSSH, OpenVPN and VMware.
Revision Changes Path
1.18 +32 -5 src/share/man/man4/tap.4
1.24 +33 -4 src/share/man/man4/tun.4
1.69 +126 -32 src/sys/net/if_tap.c
1.162 +77 -7 src/sys/net/if_tun.c
PR: 105228 (potentially also 90413, 105570)
Submitted by: Landon Fuller
Tested by: Andrej Tobola
Approved by: core (rwatson)
promisc mode hack while vlan hardware tag processing is enabled.
For all the details view the commitlog for the following files:
sys/net/ethernet.h revision 1.26
sys/net/if_ethersubr.c revision 1.220
sys/dev/em/if_em.c revision 1.165
Close a race that occurs when using sendto() to connect and send on a
UNIX domain socket at the same time as the remote host is closing the
new connections as quickly as they open. Since the connect() and
send() paths are non-atomic with respect to another, it is possible
for the second thread's close() call to disconnect the two sockets
as connect() returns, leading to the consumer (which plans to send())
with a NULL kernel pointer to its proposed peer. As a result, after
acquiring the UNIX domain socket subsystem lock, we need to revalidate
the connection pointers even though connect() has technically succeed,
and reurn an error to say that there's no connection on which to
perform the send.
We might want to rethink the specific errno number, perhaps ECONNRESET
would be better.
Reported by: Young Hyun <youngh at caida dot org>
PR: 100940
Rounding addr upwards to next 2M boundary in pmap_growkernel() could
cause addr to become 0, resulting in an early return without populating
the last PDE.
Remove union_dircheckp hook, it is not needed by new unionfs code anymore.
As consequence, getdirentries() no longer needs to drop/reacquire
directory vnode lock, that would allow it to be reclaimed in between.
Use int instead of u_int for the 'extra' argument to the
clone_create() KPI.
This fixes a signedness bug in unit number comparisons.
Revision Changes Path
1.201 +1 -1 src/sys/kern/kern_conf.c
1.67 +1 -1 src/sys/net/if_tap.c
1.231 +1 -1 src/sys/sys/conf.h
Submitted by: imp, Landon Fuller
PR: kern/105228
1.203 +6 -2 src/sys/cam/scsi/scsi_da.c
1.101 +1 -1 src/sys/geom/geom_disk.c
Reduce the noise when plugging in (USB) mass storage devices, like a 4 port
flash card reader.
Also remove an 'Opened da0 -> <random number>' which is not needed on a daily
basis (available through bootverbose).
rev. 1.34-1.36 mdconfig.8
rev. 1.52-1.54 mdconfig.c
Make attach the default for -f and assume '-a' and '-t malloc' flags for '-s
<size>' (malloc ramdisk) if not specified.
To mount an image:
MD=`mdconfig -f image`
mount $MD /mnt
To create and mount a RAM disk (gosh, last I used those was on an Atari 1040ST:
256kb just to piss off the 640kb PC loosers)
MD=`mdconfig -s 5mb`
newfs /dev/$MD
mount /dev/$MD /mnt
Et voila! Much easier to remember.
Additionally, remove the probe for the high 4 bits of IER being 0 and don't
assume we can always read/write 0 to/from those bits.
This is needed to get uart(4) to work on Xscale PXA255 and IXP425.
- In detach method, move if_free() after bus_teardown_intr().
- Clear the PCN_MISC_ASEL bit so the media port can be actually set
via the PCN_CSR_MODE register. Along with sys/dev/mii/nsphy.c 1.23.2.3
this fixes the case of certain Am79c971-based HP cards and on-board
ones in IBM machines reporting link but not actually passing any
traffic. [1]
- Add support for the internal 10baseT PHY, which actually is used on
at least said HP cards (together with an external DP83840A in a
multiple PHYs configuration). With cards that don't make use of this
internal PHY it'll also show up in FreeBSD but not cause any harm.
This is still missing support for multiple PHYs configuration using
the internal 100baseTX and/or HomePNA PHYs together with external
PHYs or multiple external PHYs though.
- Allow multiple (external) PHYs with Am79C97{2,6}, which actually
only support external PHYs (besides not connectable internal ones
which respond at the usual addresses, but which don't hurt if we
let them show up) and don't wedge when isolating PHYs. Actually,
this change special cases limiting PHYs to Am79C97{3,5,8}, for
which this driver doesn't implement swiching between the internal
and external PHYs, yet, and Am79C971, where isolating the external
PHY (at least in case it's a DP83840A) wedges the chip. Together
with sys/dev/mii/acphy.c rev. 1.16.2.5 this adds support for the
100baseFX port of AT-2700 series adaptors, which use two AC101,
one for the copper and one for the fibre port (there might be
variants which only use one PHY though).
- In pcn_ifmedia_upd() call pcn_reset() as otherwise the Am79C971 of
at least said HP cards can wedge when switching from the internal
10baseT PHY to the external PHY. This means that we need to also
initialize and possibly start the chip again in pcn_ifmedia_upd(),
which isn't that bad though as for setting the media port the chip
has to be powered down or stopped anyway and unlike documented
doesn't take effect until the next initialization.
- Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
PR: 27995, 25959, 72966 (likely) [1]
- Take advantage of mii_phy_dev_probe() and mii_phy_setmedia().
- Set MIIF_NOLOOP as loopback doesn't work with this PHY. The MIIF_NOLOOP
flag currently triggers nothing but hopefully will be respected by
mii_phy_setmedia() later on.
- Use MII_ANEGTICKS instead of 5.
- Remove an unused macro.
- Fix some whitespace nits.
- Take advantage of mii_phy_dev_probe().
- In exphy_service() for the MII_TICK case don't bother to check whether
the currently selected media is of type IFM_AUTO as auto-negotiation
doesn't need to be kicked anyway.
- Remove #if 0'ed unapplicable code.
- Fix some whitespace nits.
- Probe Davicom DM9102 PHYs.
- Don't set MIIF_NOISOLATE so amphy(4) can be used in configurations
with multiple PHYs. There doesn't seem to be a problem with isolating
AM79c873 and workalikes per se nor in combination with the NICs they're
used with and amphy(4) was already adding IFM_NONE anyway.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
- Fix a whitespace nit.
Obtained from: NetBSD dmphy(4) (except for the last item)
Set MIIF_HAVE_FIBER and add IFM_100_FX media when the AC_MCTL_FX_SEL
and thus the FX_DIS pin indicates fibre media. This is part 1/2 of
adding support for the 100baseFX interface/port of AT-2700 series
adaptors.
Idea from: NetBSD
- In acphy_service() for the MII_TICK case don't bother to check whether
the currently selected media is of type IFM_AUTO as auto-negotiation
doesn't need to be kicked anyway.
- Fix a whitespace nit.
- Probe another Altima PHY, which is a AC101 workalike and integrated
in at least ADMtek ADM8511 but apparently is not mentioned in any
publically available data sheet so the actual identifier is unknown.
- Don't set MIIF_NOISOLATE so acphy(4) can be used in configurations
with multiple PHYs. There doesn't seem to be a problem with isolating
AC101 and workalikes per se nor in combination with the NICs they're
used with.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
Obtained from: NetBSD (except for the first and second item)
- Add another Altima PHY, which is a AC101 workalike and integrated
in at least ADMtek ADM8511 but apparently is not mentioned in any
publically available data sheet so the actual identifier is unknown.
- Add Davicom DM9102 PHY.
- Add DM9101 to the description of AMD 79C873 as at least some Davicom
DM9101F identify identical to AMD 79C873.
Obtained from: NetBSD
- Don't set MIIF_NOISOLATE so tdkphy(4) can be used in configurations
with multiple PHYs. There doesn't seem to be a problem with isolating
78Q2120 per se nor in combination with the NICs they're used with and
tdkphy(4) was already adding IFM_NONE anyway.
- Set MIIF_NOLOOP as loopback doesn't work with this PHY. The MIIF_NOLOOP
flag currently triggers nothing but hopefully will be respected by
mii_phy_setmedia() later on.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
Thanks to Hans-Joerg Sirtl for lending me test hardware.
Obtained from: NetBSD tqphy(4)
- Remove the first rgephy_reset() invocation in rgephy_attach(). This
seems to have been missed when merging rev. 1.9, which actually moves
the rgephy_reset() invocation further down, in rev. 1.6.2.1.
- Don't set MIIF_NOISOLATE so rgephy(4) can be used in configurations
with multiple PHYs and un-comment case IFM_NONE in case MII_MEDIACHG
rgephy_service(). There doesn't seem to be a problem with isolating
RTL8169S and their internal PHY.
- Take advantage of mii_phy_add_media(). [1]
Obtained from: NetBSD [1]
tdkphy.c 1.21; tlphy.c 1.22; xmphy.c 1.21
Some style changes to a couple of PHY drivers:
- Fix some whitespace nits.
- Fix some spelling in comments.
- Use MII_ANEGTICKS instead of 5.
- Don't define variables in nested scope.
- Remove superfluous returns at the end of void functions.
- Remove unused static global rgephy_mii_model.
- Remove dupe $FreeBSD$ in ciphy(4) and dupe $Id$ in tdkphy(4).
- Sort brgphys table.
ciphy.c 1.7; inphy.c 1.16; ip1000phy.c 1.2; lxtphy.c 1.18;
mii_physubr.c 1.28; miivar.h 1.20; nsgphy.c 1.24; nsphy.c 1.27;
pnaphy.c 1.18; qsphy.c 1.18; rgephy.c 1.12; rlphy.c 1.25, 1.27, 1.28;
tdkphy.c 1.20; tlphy.c 1.21; xmphy.c 1.20
Add a helper function mii_phy_dev_probe(), which wraps around the
mii_phy_match() API and takes care of the PHY device probe based on
the struct mii_phydesc array and the match return value provided.
Convert PHY drivers to take advantage of mii_phy_dev_probe(),
converting drivers to provide a mii_phydesc table in the first
place where necessary.
Clean up after tun(4) properly; remove routes whose ifp is set to
that of the tun instance even for the !AF_INET case, and properly
remove configured addresses by calling if_purgeaddrs().
Maintain the TUN_DSTADDR behaviour for compatibility with the OS/390
emulator.
PR: 100080
Reviewed by: bz
I was reminded of the brokenness when attempting to profile sendto()
to compare RELENG_6 with -current. Just configuring high res profiling
made sendto() with profiling inactive almost twice as slow in RELENG_6,
and actual profiles were almost unusable due to multiple copies of
non-inlined inline functions like curthread().
Drop unicast Ethernet frames not destined for the configured address
of a tap(4) instance, if IFF_PROMISC is not set.
In tap(4), we should emulate the effect IFF_PROMISC would have on
hardware, otherwise we risk introducing layer 2 loops if tap(4) is
used with bridges. This means not even bpf(4) gets to see them.
This patch has been tested in a variety of situations. Multicast and
broadcast frames are correctly allowed through. I have observed this
behaviour causing problems with multiple QEMU instances hosted on
the same FreeBSD machine.
The checks in in ether_demux() [if_ethersubr.c, rev 1.222, line 638]
are insufficient to prevent this bug from occurring, as ifp->if_vlantrunk
will always be NULL for the non-vlan case.
PR: 86429
Submitted by: Pieter de Boer (with changes)
are related and this is why the MFC is done together).
In detail:
firmware(9):
Cleanup and document the implementation of firmware(9) based on
a version that i posted earlier on the -current mailing list,
and subsequent feedback received. See the commit log
luigi 2007-02-15 17:21:31 UTC
The core of the change is just in sys/firmware.h and kern/subr_firmware.c,
while other files are just adaptation of the clients to the ABI change
(const-ification of some parameters and hiding of internal info,
so this is fully compatible at the binary level).
Note that in RELENG_6 sys/arm/xscale/ixp425, sys/dev/ipw and
sys/dev/mxge do not exist or have not been updated to use firmware(9).
iwi(4)
+ add debugging code IWI_LOCK_CHECK() to print (under sysctl debug.iwi)
missing locks;
+ make sure that iwi_ioctl() wait until the previous iwi_cmd() terminates.
Align the interfaces for the various watchdogs and make the interface
behave as expected.
Also:
- Return an error if WD_PASSIVE is passed in to the ioctl as only
WD_ACTIVE is implemented at the moment. See sys/watchdog.h for an
explanation of the difference between WD_ACTIVE and WD_PASSIVE.
- Remove the I_HAVE_TOTALLY_LOST_MY_SENSE_OF_HUMOR define. If you've
lost your sense of humor, than don't add a define.
Specific changes:
i80321_wdog.c
Don't roll your own passive watchdog tickle as this would defeat the
purpose of an active (userland) watchdog tickle.
ichwd.c / ipmi.c:
WD_ACTIVE means active patting of the watchdog by a userland process,
not whether the watchdog is active. See sys/watchdog.h.
kern_clock.c:
(software watchdog) Remove a check for WD_ACTIVE as this does not make
sense here. This reverts r1.181.
Revision Changes Path
1.371 +1 -0 src/share/man/man4/Makefile
1.8 +69 -25 src/share/man/man4/watchdog.4
1.4 +7 -1 src/share/man/man9/watchdog.9
1.3 +15 -11 src/sys/arm/xscale/i80321/i80321_wdog.c
1.7 +12 -30 src/sys/dev/ichwd/ichwd.c
1.8 +8 -17 src/sys/dev/ipmi/ipmi.c
1.8 +3 -1 src/sys/dev/mk48txx/mk48txx.c
1.4 +4 -1 src/sys/dev/watchdog/watchdog.c
1.33 +9 -9 src/sys/i386/i386/elan-mmcr.c
1.193 +3 -3 src/sys/kern/kern_clock.c
1.4 +0 -4 src/sys/sys/watchdog.h
and
Don't exit from watchdogd on receiving a signal if we cannot stop the watchdog.
That'll require -KILL. This avoids resetting your system on one of the
watchdogs that you cannot disable.
Revision Changes Path
1.15 +18 -11 src/usr.sbin/watchdogd/watchdogd.c
Reviewed by: phk
revision 1.2
date: 2005/10/03 14:18:21; author: cognet; state: Exp; lines: +12 -2
Make mem.c know about the pages allocated with ARM_USE_SMALL_ALLOC.
revision 1.5
date: 2007/02/13 15:35:57; author: cognet; state: Exp; lines: +13 -0
Make sure the address is valid before mapping it.
Backing out an earlier change. It seems harmless for NFS to miss the "force
unmount" flag, making the acquisition of the MNT_ILOCK in nfs_request() and
nfs_sigintr() unnecessary. Pointed out by tegge@.
- push Giant into linker_reference_module();
- introduce linker_release_module(), which also takes care of
proper locking.
The latter also fixes a missing mtx_loc/unlock in subr_firmware.c .
Apparently, digi.c is the only external client of linker_reference_module()
which is a bit suspicious - perhaps dev/digi/ could make with a bit
of review from someone knowledgeable to check how the function is used,
and whether it could be replaced by something else.
missing meant that a PCI-PCI bridge that supported MSI but didn't support
PCIY_SUBVENDOR (or the MSI capability came after the subvendor cap) would
have garbage in its subvendor ID.
Import macros IN_LINKLOCAL(), IN_PRIVATE(), IN_LOCAL_GROUP(), IN_ANY_LOCAL().
This is not a functional change.
IN_LINKLOCAL() tests if an address falls within the IPv4 link-local prefix.
IN_PRIVATE() tests if an address falls within an RFC 1918 private prefix.
IN_LOCAL_GROUP() tests if an address falls within the statically assigned
link-local multicast scope specified in RFC 2365.
IN_ANY_LOCAL() tests for either of IN_LINKLOCAL() or IN_LOCAL_GROUP().
As with the existing macros in the FreeBSD netinet stack, comparisons
are performed in host-byte order.
See also: RFC 1918, RFC 2365, RFC 3927
Obtained from: NetBSD (dyoung@)
In the ICMP6 path to handle FQDN 'who-are-you' queries, check that the
packet header mbuf is non-NULL before trying to create a duplicate of it.
PR: 95957
Reviewed by: ume
Rewrite the udf_read() routine to use a file vnode instead of the devvp vnode.
The code is modelled after cd9660, including support for simple read-ahead
courtesy of clustered read.
Fix udf_strategy to DTRT.
This change fixes sendfile(2) not to send out garbage.
Don't reference a NULL pointer.
MFC archive_read_support_compression_none.c rev. 1.14:
Print off_t by casting to intmax_t and using %jd.
Ask the client skipper to handle requests > SSIZE_MAX if the API works.
which fixes many locking and crashing problems in the previous
implementation. kib@ helped a lot by eliminating a source
of deadlocks encountered with unionfs with these commits:
rev. 1.50 of src/sys/fs/deadfs/dead_vnops.c
rev. 1.97 of src/sys/kern/vfs_lookup.c
Submitted by: daichi, Masanori OZAWA <ozawa ongs co jp>
If B_NOCACHE is set the pages of vm backed buffers will be invalidated.
However clean buffers can be backed by dirty VM pages so invalidating them
can lead to data loss.
Add support for flush dirty page in the data invalidation function
of some network file systems.
This fixes data losses during vnode recycling (and other code paths
using invalbuf(*,V_SAVE,*,*)) for data written using an mmaped file.
have a real bus_get_dma_tag()) and add MLINK for bus_dmamap_load_mbuf_sg().
Prompted by a user who noticed the bus_dmamap_sync ops stuff was still
wrong in 6.x.
Reported by: Jason Harmening <jason.harmening at gmail>
When fast-forwarding is enabled, do not forward directed IPv4 broadcasts
to locally attached broadcast networks.
Note well: This relies on the layer 2 route cloning behaviour in BSD.
PR: 98799
Tested by: Dmitry Sergienko
- In rlphy_service() for the MII_TICK case don't bother to check whether
the currently selected media is of type IFM_AUTO as auto-negotiation
doesn't need to be kicked anyway.
- In rlphy_status() just use if_dname instead of determining the name
of the parent NIC via device_get_name(device_get_parent(sc->mii_dev)).
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
- Fix some whitespace nits and remove commented out code that just can't
be used with RealTek PHYs.
- In qsphy_service() for the MII_TICK case don't bother to check whether
the currently selected media is of type IFM_AUTO as auto-negotiation
doesn't need to be kicked anyway.
- Don't set MIIF_NOISOLATE so qsphy(4) can be used in configurations
with multiple PHYs. There doesn't seem to be a problem with isolating
QS6612 per se nor in combination with the NICs they're used with.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
Obtained from: NetBSD (except for the first item)
- Don't add IFM_NONE when used in combination with pcn(4) as for MII
loopback to work PCnet chips additionally need to be placed into
external loopback mode which pcn(4) doesn't do so far.
- In nsphy_service() just use if_dname instead of determining the name
of the parent NIC via device_get_name(device_get_parent(sc->mii_dev)).
- Don't set MIIF_NOISOLATE, except for when used in combination with a
NIC that wedges when isolating the PHYs, so nsphy(4) can be used in
configurations with multiple PHYs.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia() (requires the MIIF_FORCEANEG
added in sys/dev/mii/mii_physubr.c 1.22.2.3, sys/dev/mii/miivar.h
1.15.14.2).
- Implement a separate nsphy_reset(). There are two reasons for this:
1) This PHY can take an inordinate amount of time to reset if media
is attached; under fairly normal circumstances up to nearly one
second. This is because it appears to go through an implicit auto-
negotiation cycle as part of the reset.
2) During reset and auto-negotiation, the BMCR will clear the reset
bit before the process is complete. It will return 0 until the
process is complete and it's safe to access the PHY again.
This is the first of two changes required to make the combination of
Am79c971 and DP83840A found on certain HP cards and on-board in IBM
machines work.
- Fix some whitespace nits.
Based on: NetBSD (except for the first and second item)
- Fix obsolete comment.
- Extend references to lnc(4) by references to le(4) as the constraint
described in the comment applies to the latter as well.
- Don't bother to include IDs of PCnet chips which are not supported
by this driver and largely are not even PCI devices in pcn_chipid.
- Use device_printf(9)/if_printf(9) rather than implementing their
functionality with printf(9).
- Sprinkle some const.
- Don't set MIIF_NOISOLATE so lxtphy(4) can be used in configurations
with multiple PHYs. There doesn't seem to be a problem with isolating
LXT970 per se nor in combination with the NICs they're used with and
lxtphy(4) was already adding IFM_NONE anyway.
- Use mii_phy_add_media() instead of mii_add_media() so the latter can
be eventually retired.
- Take advantage of mii_phy_setmedia().
- Fix some whitespace nits.
Obtained from: NetBSD
exphy.c 1.20, lxtphy.c 1.15, nsphy.c 1.24, pnaphy.c 1.16, pnphy.c 1.19,
qsphy.c 1.15, rgephy.c 1.7, rlphy.c 1.22, tlphy.c 1.19, ukphy.c 1.18,
xmphy.c 1.18
Use ansi function definitions in preference to K&R to reduce diffs
with NetBSD (and cause it looks cooler).
Analogous to mii_add_media(), factor out the code for checking whether
the BMSR contains any media at all to mii_phy_add_media(). The majority
of the drivers currently using mii_phy_add_media() were missing such a
check anyway though.
- Add a MIIF_FORCEANEG flag which forces an auto-negotiation to always
take place if IFM_AUTO is selected. This allows drivers like nsphy(4),
which need to force writing the ANAR according to the BMSR, to take
advantage of mii_phy_setmedia(). [1]
- In mii_phy_reset() once the current media is set don't isolate the PHY
corresponding to the instance of the currently selected media rather
than unconditionally not isolating the PHY corresponding to instance 0.
This saves a isolation-unisolation-cycle of the PHY corresponding to
the currently selected media for the case were it isn't instance 0.
- Fix some whitespace nits. [1]
Obtained from: NetBSD [1]
Fix for problems that occur when all mbuf clusters migrate to the mbuf packet
zone. Cluster allocations fail when this happens. Also processes that may have
blocked on cluster allocations will never be woken up. Thanks to rwatson for
an overview of the issue and pointers to the mbuma paper and his tool to dump
out UMA zones.
Reviewed by: andre@
Fix for a bug where only one process (of multiple) blocked on
maxpages on a zone is woken up, with the rest never being woken up as
a result of the ZFLAG_FULL flag being cleared. Wakeup all such blocked
procsses instead. This change introduces a thundering herd, but since
this should be relatively infrequent, optimizing this (by introducing
a count of blocked processes, for example) may be premature.
Reviewd by: ups@
Fixes up the handling of shared vnode lock lookups in the NFS client,
adds a FS type specific flag indicating that the FS supports shared
vnode lock lookups, adds some logic in vfs_lookup.c to test this flag
and set lock flags appropriately.
This change fixes the general problem of cascading vnode locks when an
NFS server goes down.
Ideally, we wouldn't need these changes, as enabling shared vnode lock
lookups globally would work. Unfortunately, UFS, for example isn't
ready for shared vnode lock lookups, crashing pretty quickly.
This change is the result of discussions with Stephan Uphoff (ups@).
Thanks to Kris for shaking out several bugs in NFS with shared vnode
lock lookups in current. MFC'ed per Kris' request.
Reviewed by: ups@
Add lists of ICMP types and codes for user and developer reference.
Cross-reference pf.conf(5) which is able to use these definitions.
PR: 85243
Submitted by: Daniel Gerzo
Obtained from: OpenBSD
- Introduce per-interface dhclient_flags_<ifn> and
background_dhclient_<ifn> rc.conf variables.
- Default to sending a client identifer.
- When an invalid host name option is sent, delete it and accept the
lease.
- Fix usage, the call to getopt, and a typo in rc.d/dhclient.
Remove hard-coded limit (200) on maximum number of packages that can be
added with a single invocation of pkg_add, replacing it with something
rather more dynamic.
Check the actual sector size of the underlying media before mounting.
Prevents a kernel panic if you try to "mount_cd9660 /dev/acd0 /mnt" while
an audio CD is in the CD-ROM drive.
PR: 92269
Do not pass "noauto", "userquota", or "groupquota" mount options
down to nmount() or external mount programs.
PR: 108751
Reported and tested by: Neil Hoggarth <neil hoggarth me uk>
Be explicit in examples about the correct grammar for 'alias' and
'-alias', and that 'add' and 'delete are in fact synonyms for these
in the ifconfig(8) grammar.
Use network prefixes explicitly specified in IETF RFCs for
documentation purposes. (bz)
PR 102701
See also: RFC 3330, RFC 3849
Submitted by: bz
Fix huge memory leak within sound buffer (during channel destruction,
buffer resizing, etc.) that was here since eon. Free all (unmanaged)
allocated buffer through sndbuf_destroy() in case we forgot to call
sndbuf_free(). For a managed buffer (mostly hw specific managed buffer),
either provide CHANNEL_FREE() method with appropriate return value to
invoke semi-automatic sndbuf_free() or simply do it on their own. If
everything is failed, sndbuf_destroy() will come to the rescue as a
final measure.
When the following conditions are meet:
- First configured key is based only on keyfile (no passphrase).
- Device is attached.
- User changes first key (setkey) from keyfile to passphrase and doesn't
specify number of iterations (with -i option).
...geli(8) won't store calculated number of iterations in metadata.
This result in device beeing unaccesable after detach.
One can recover from this situation by guessing number of iterations
generated, storing it in metadata and trying to attach device.
Recovery procedure isn't nice, but one's data is not lost.
Reported by: Thomas Nickl <[email protected]>
Drop all received data mbufs from a socket's queue if the MT_SONAME
mbuf is dropped, to preserve the invariant in the PR_ADDR case.
PR: kern/38495
Submitted by: James Juran
Reviewed by: sam, rwatson
Obtained from: NetBSD
Pass VM_PROT_EXECUTE to vm_fault() instead of VM_PROT_READ if the page
fault was caused by an instruction fetch.
Differentiate between data and instruction fetch in the fatal
page fault trap handler.
Fix a typo in ata-queue.c
PR: kern/107100
Submitted by: Stephen J. Roznowski <sjr at comcast dot net>
Approved by: sos
and
Add the SMART command to the ATA instruction set.
When the disk has an error, it will now print SMART
instead of 'Unknown CMD'.
PR: kern/93368
Submitted by: Garry Belka <garry at NetworkPhysics dot COM>
Approved by: sos
Approved by: sos (implicitly with the previous two commits)
It seems that enabling Tx and Rx before setting descriptor DMA
addresses shall access invalid descriptor DMA addresses on PCIe
hardwares and then panicked the system.
To fix it set descriptor DMA addresses before enabling Tx and Rx
such that hardware can see valid descriptor DMA addresses. Also
set RL_EARLY_TX_THRESH before starting Tx and Rx.
o In re_newbuf() and re_encap() if re_dma_map_desc() aborts the mapping
operation as it ran out of free descriptors or if there are too many
segments in the first place, call bus_dmamap_unload() in order to
unload the already loaded segments.
For trying to map the defragmented mbuf (chain) in re_encap() this
introduces re_dma_map_desc() setting arg.rl_maxsegs to 0 as a new
failure mode. Previously we just ignored this case, corrupting our
view of the TX ring.
o In re_txeof():
- Don't clear IFF_DRV_OACTIVE unless there are at least 4 free TX
descriptors. Further down the road re_encap() will bail if there
aren't at least 4 free TX descriptors, causing re_start() to
abort and prepend the dequeued mbuf again so it makes no sense
to pretend we could process mbufs again when in fact we won't.
While at it replace this magic 4 with a macro RL_TX_DESC_THLD
throughout this driver.
- Don't cancel the watchdog timeout as soon as there's at least one
free TX descriptor but instead only if all descriptors have been
handled. It's perfectly normal, especially in the DEVICE_POLLING
case, that re_txeof() is called when only a part of the enqueued
TX descriptors have been handled, causing the watchdog to be
disarmed prematurely.
o In re_encap():
- If m_defrag() fails just drop the packet like other NIC drivers
do. This should only happen when there's a mbuf shortage, in which
case it was possible to end up with an IFQ full of packets which
couldn't be processed as they couldn't be defragmented as they
were taking up all the mbufs themselves. This includes adjusting
re_start() to not trying to prepend the mbuf (chain) if re_encap()
has freed it.
- Remove dupe initialization of members of struct rl_dmaload_arg to
values that didn't change since trying to process the fragmented
mbuf chain.
While at it remove an unused member from struct rl_dmaload_arg.
o In re_start() remove a abandoned, banal comment. The corresponding
code was moved to re_attach() some time ago.
- Use the re_tick() callout instead of if_slowtimo() for driving
re_watchdog() in order to avoid races accessing if_timer.
- Use bus_get_dma_tag() so re(4) works on platforms requiring it;
though for RELENG_6 this is a NOOP so far and just MFC'ed for diff
reduction.
- Remove invalid BUS_DMA_ALLOCNOW when creating the parent DMA tag
and the tags that are used for static memory allocations.
- Don't bother to set if_mtu to ETHERMTU, ether_ifattach() does that.
- Remove an unused variable in re_intr().
In case we are supplied with an imagename that matches a module, but not a
firmware in that module (eventhough this is a programming error) - drop
the reference to the module again.
Submitted by: Benjamin Close
- Sync descriptions of RL_HWREV_8168_SPIN{1,2} with HEAD (merge botch
of rev. 1.70 in rev. 1.46.2.17).
- Consistently use if_printf() only in interface methods: if_start(),
if_watchdog, etc., or in functions used only in these methods.
In all other functions in the driver use device_printf().
amd64 by allocating and committing audit records for syscalls. It should
be noted that the submission of userspace records are not affected by
this bug.
the following:
* License updates.
* Fixes for FreeBSD/arm
* New read_open_filename, read_open_memory
* New write_open_filename, write_open_memory
* Write-blocking cleanup (cperciva@)
* Adjust API so read_open/write_open funcs only need public API
* Portability improvements (casts, include guards, etc.)
* Properly pad sparse archive entries with blocks of zero bytes (cperciva@)
* Correct copy of data to file when very large reads are possible
* Be more flexible about dir permissions to avoid some fixups
* Correct skip handling for entries over 2G (cperciva@)
* ISO9660: skip entries faster, support entries over 2G
* Tar: correct position accounting when skipping large entries (cperciva@)
* Support unbuffered write as a special case (blocksize=0) (cperciva@)
* Documentation corrections, improvements
* Spelling corrections (cperciva@)
* Improve some internal error returns
A few of these changes break the API/ABI and are therefore conditional
on the version number. FreeBSD 6 will continue to use libarchive 1.x,
which will continue to use the old API/ABI. When all of these changes
are ready, the libarchive version number will be changed in -CURRENT
to enable the new API. Hopefully, this will allow the actual source
to remain identical between FreeBSD 6 and 7; only the version
parameters in the Makefile will be different.
Return value PKT_ALIAS_FOUND_HEADER_FRAGMENT isn't an error case. The
packet shouldn't be dropped.
Submitted by: Alexander Motin <mav alkar.net>
Correctly calculate length of IP header.
Submitted by: Eugene Hartmann <eugene tpsb.com.ru>
* Print error messages where appropriate, and print the right one.
* Properly handle errors in archive_write_close.
* Correct resource leak in @<archive> handling.
date: 2006/12/20 17:10:53; author: delphij; state: Exp; lines: +5 -0
On amd64 platform, use linux32 headers so 32-bit Linux applications
would be able to work with aac(4).
This approach is used by some other drivers as well. However, we
need a more generic way to do this in order to avoid having to
special case headers in individual drivers for each platform.
Obtained from: Adaptec (version b11518)
Since NIS is an RPC based service, add a note that when adjusting access
controls in NIS, similar access controls should be considered for the
rpcbind as well.
Based on The Open Group Base Specifications Issue 6 IEEE Std 1003.1, our
current implementation of df(1) is does not properly format the output under
certain conditions. Right now -kP and -Pk are not the same thing. Further,
when we set the BLOCKSIZE environment variable, we use "1k" instead of "1024",
making the header display incorrectly.
- Instead of if_watchdog/if_timer interface use our own timer
that piggybacks on bce_tick() callout.
- Instead of unconditionally resetting the controller, try to
skip the reset in case we got a pause frame, like em(4) did.
- Lock bce_tick() using callout_init_mtx().
Add a new address cache type called sticky. On an interface marked sticky any
address learned by the bridge is made permanent, the address will not age out
and most importantly will not migrate to another interface.
This can be used to stop mac address poisoning or clients roaming in much the
same way as static entries without the hassle of preloading the table.
- When looking up the symbol by dlsym, look it not only in the object
given as dso handle, but also in the implicit dependencies of that dso.
- Const-ify the read-only parameter objlist of symlook_list.
- Clean up white spaces and fix style(9).
Patch backported by: jkim
In ofw_pcibus_attach() skip dupe PCI devices reported by the
firmware by checking whether a device with the same triple of
bus number, slot and function already has been added.
Fix head -c ### where ### is greater than 2^31. Unlike the submitted
patch this uses off_t.
WARNSify and add $FreeBSD$ to Makefile.
PR: bin/107824
Submitted by: Brian Cornell <briancornell at earthlink dot net>
sysctl and socket teardown. Note that we engage in a bit of trickery to
preserve the ABI of 'struct unpcb' in 6.x. We change the UMA zone to hold
a 'struct unpcb_wrapper' which holds a 6.x 'struct unpcb' followed by the
new reference count needed for handling the race. We then cast 'struct
unpcb' pointers to 'struct unpcb_wrapper' pointers when we need to access
the reference count.
Submitted by: ups (including the ABI trickery)
Sync the hardware list with the driver and with what I could find on
the Areca website.
Also remove the module from the FILES section, it's already covered in
the SYNOPSIS.
Pull in /etc/rc.conf.d/network so that ifconfig_<if> variables can be
set there. This is required for consistency with /etc/rc.d/netif.
PR: conf/103893
Submitted by: Nick Hibma <nick at anywi.com>
should check length of the pathname in the range 0<=n<=NFS_MAXPATHLEN,
not 0<n<=NFS_MAXPATHLEN. This fixes a minor interoperability problem
that the FreeBSD NFS server did not allow a symlink pointing the empty
pathname.
visible changes:
* a new option -I for interactive killing;
* a new syntax for jail wildcards: -j any, -j none; -j0 is deprecated now.
MFC the regression tests for pkill(1), too, to make sure it works well.
Approved by: gad, pjd, re
Tested by: the regression tests
rev. 1.167 of src/sys/dev/md/md.c
rev. 1.514, 1.515 of src/sys/kern/vfs_bio.c
rev. 1.319, 1.320 of src/sys/sys/vnode.h
Resolve two deadlocks that could be caused by busy md device backed by
vnode.
marcel 2006-12-21 05:40:46 UTC
Unbreak 64-bit little-endian systems that do require alignment.
The fix involves using le16dec(), le32dec(), le16enc() and
le32enc(). This eliminates invalid casts and duplicated logic.
PR: 106703
Tested by: Axel Gonzalez <loox e-shell net>
- Conditionally acquire Giant in mdstart_vnode(), mdcreate_vnode(), and
mddestroy() only if the file is from a non-MPSAFE fs.
There, to accommodate for the vn_open() difference with HEAD, use
VFS_LOCK_GIANT after vn_open (since vn_open(..., -1) assumes caller is not
MP-safe).
- No longer unconditionally hold Giant in the md kthread for vnode-backed
kthreads.
- Improve the handling of the thread exit race when destroying an md
device.
No objections from: jhb
filehandle is looked up by 2 or more processes.
- Don't vrele() the losing vnode, as vfs_hash_insert() vput()'s it.
- Initialize mutexes on the losing nfsnode (as these get destroyed in the
nfsnode reclaim path).
- Move the initialization of the filehandle to before the vfs_insert, to
close some races which could result in multiple vnodes for the same
filehandle being inserted into the hash.
in a previous commit to avoid namespace collisions, unfortunately I missed two
of them. This leads to the ip alias being incorrectly removed in some cases
when using the stop command.
Reported by: Philipp Wuensche <[email protected]>
1.90: Fix typos in comments.
1.91: Add /lib and /libexec to the list of directories that have the
schg flag removed prior to an upgrade.
1.93: Fix a pair of user-visible typos.
Approved by: ru
Fix race conditions on enumerating pcb lists by moving the initialization
(and where appropriate the destruction) of the pcb mutex to the
init/finit functions of the pcb zones. This allows locking of the pcb
entries and race condition free comparison of the generation count.
Rearrange locking a bit to avoid extra locking operation to update the
generation count in in_pcballoc(). (in_pcballoc now returns the pcb
locked)
I am planning to convert pcb list handling from a type safe to a
reference count model soon. (As this allows really freeing the PCBs)
Reviewed by: rwatson, mohans
This was missed in jhb's earlier MFC, and lead to a panic when creating
TCP sockets.
Reported by: Larry Rosenman <ler at lerctr dot org>
Henrik Brix Andersen <henrik at brixandersen dot dk>
Karol Kwiatkowski <freebsd at orchid dot homeunix dot org>
Danny Braniss <danny at cs dot huji dot ac dot il>
Torfinn Ingolfsen <torfinn dot ingolfsen at broadpark dot no>
- add some files to FILES section and provide their description
- reference devfs.conf and devfs.rules in SEE ALSO section
Approved by: keramida (mentor), trhodes (mentor)
- Make pcib_devclass private to sys/dev/pci/pci_pci.c and change all the
various pcib drivers to use their own private devclass_t variables for
their modules.
- Use the DEFINE_CLASS_0() macro to declare drivers for the various pcib
drivers while I'm here.
Allow for module-path being a semicolon-separated list of dirs.
This is consistent with kern.module_path sysctl and also compensates
for the unconventional syntax of asf(8) where the last of multiple
arguments is the output file, which prevents us from using the
traditional Unix syntax "foo file ..." to specify multiple module
dirs.
asf.c rev. 1.12
asf.8 rev. 1.11
Fix a typo in __fpu_ftox() that caused long double to long (and long long)
conversion of negative numbers to always result in -1.
While at it, rearrange the nearby comment so it fits in 80 chars per line,
like the rest of this file does.
PR: 107130
* Remove nonexistant -F option from getopts string.
* Correct the names of some options.
* Check for -U and --strip-components options in inappropriate contexts.
Add inverted amplifier sense quirk for HP Compaq nx4300 and few
NEC VersaPro.
PR: kern/106104, kern/104715
Submitted by: Shun-ichi Kobayashi <[email protected]>
KAWATA Masahiko <[email protected]>
Add support for Nvidia Nforce MCP04 AC97 controller.
PR: kern/106829
Submitted by: Frédéric Petit <[email protected]>
respectively. A lot more is needed to support these chips than just PCI
IDs, and the code added to 7-CURRENT isn't ready for FreeBSD 6 yet.
Approved by: re
Retest tp->t_session because Giant might have been temporarily dropped
while waiting for proctree_lock, allowing for an intervening tty_close()
that cleared tp->t_session.
Submitted by: tegge
Don't assume IF_LLADDR returns aligned memory address.
Because accessing ID registers in rtl81x9 needs 32bit register access
and RL_IDR6/RL_IDR7 registers are reservered registers bzero() is
needed before copying ethernet address.
This fixes unaligned memory accesses panic in sparc64.
Improve cleartmp in a number of aspects:
+ Use rc.subr(8) features properly.
+ Do the whole job of obliterating /tmp contents in find(1).
+ Leave lost+found and quota.{user,group} in /tmp only if root-owned.
+ Make the overall structure clearer by first removing the X dirs
(perhaps along with the rest of /tmp) and then re-creating them.
+ Use "find -exec rm -rf {} +" for efficiency: each rm instance gets
a chance to kill as much files in /tmp as ARG_MAX permits.
bus_get_dma_tag(dev) in stable is spelled NULL presently. Until such
time as we MFC this functionailty (which may be never), provide this
alternate spelling to aide in back-porting -current drivers. When the
functionality is merged, this can be retired.
- put some common code in a function handle_remount();
- add better checks on non-existing directories to prevent error
messages at run time;
- introduce a function log() to help debugging diskless booting
when things don't work;
- modify the parsing of diskless_remount so you can add mount_nfs
options after the pathname. You could use 'remount' to do something
similar, but this way is more convenient because you don't have to
hardwire the server name in the command.
- document the above.
did, mainly, if a thread is in inhibited state, don't preempt it since
it will yield cpu, while here, synchoronize variable name with
maybe_preempt().
Tested by: Dmitriy Kirhlarov <[email protected]>
PR: kern/105464
Previous history of ldexpf()'s existence in FreeBSD:
2005/03/07 s_scalbnf.c 1.8: first implemented (for all arches)
i387 s_scalbnf.S 1.1: i386 MD implementation at same time
2005/04/16 amd64 s_scalbnf.S 1.1: missing here, and thus missing for amd64
2005/09/12 amd64 s_scalbnf.S 1.2: fixed in -current
2005/12/06 e_scalbnf.c 1.10: misimplemented for all arches (accidentally has
no effect except for amd64)
2006/07/05 e_scalbnf.c 1.11: backed out misimplementation
2006/07/05 e_scalbnf.c 1.12: attempt to fix log message in 1.11
The log message in e_scalbnf.c 1.12 still got the main detail wrong.
1.10 actually succeeded in misimplementing ldexpf() for amd64 only,
since for amd64 only there is no strong reference to hide the broken
weak reference. For most arches, there is a strong reference in
s_scalbnf.c; for i386, there is a strong reference in s_scalbnf.S; for
amd64 there is supposed to be a strong reference in s_scalbnf.S but
it was missing.
So the problem mainly affected all versions of RELENG_6 on amd64. -current
has ldexpf() and versions before 6.0 aren't supposed to have it.
Debugging completed by: Kael Fischer, Steve Kargl
> revision 1.134
> date: 2006/03/05 17:52:32; author: phk; state: Exp; lines: +4 -2
> When we get an unknown ATAPI comand, try it even if it is not listed,
> in all likelyhood just passing it through will work.
This fix allows for burning CDs/DVDs on USB drives which would be nice
for 6.2...
Original work by: phk
Requested by: phk
Reviewed by: iedowse
- Add israeli mirror IPv4 and IPv6 [1]
- Add an IPv6 main site now both ISC and TDC have IPv6
Submitted by: Rostislav Krasny <[email protected]> [1]
Reviewed by: simon
After a change of devd.conf, devd(8) handles NIC attach/detach event
by using /etc/pccard_ether with the interface name as the argument.
This model does not work properly with IPv6 configuration because the
implementation of IPv6 stateless auto-configuration in the FreeBSD
rc.d scripts depends on whether there are any explicit configurations
for interfaces or not. It works this way: if no manual configuration,
it will perform auto-configuration, but otherwise no
auto-configuration will be performed. So, this behavior can only be
determined by all of the interfaces on a system, not a single one.
For this reason, the network6_interface_setup() function called from
the pccard_ether_start() does not work with a single interface name.
And what is worse, this combination of devd.conf and
pccard_ether_start() caused a bad side-effect that when
ipv6_enable=YES, all of interfaces marked as DOWN would be UP
unconditionally (and router solicitation was sent) just after devd(8)
was invoked. This should be fixed in a more sophisticated way.
Add a link-local address to the lo0 even when ipv6_enable="NO".
A kernel with INET6 always has ::1 on lo0, so in the case of
ipv6_enable="NO" the lo0 can have ::1 with no link-local address.
This is a violation of the IPv6 specification. As a workaround
for this situation, fe80::1 is added in rc.d/auto_linklocal when
lo0 has no link-local address.
- Correct spelling of 3DNow!;
- Add two new CPUID bits for AMD CPUs, i. e., SVM and extended APIC register;
- Add another Intel CPU feature flag, xTPR (Send Task Priority Messages);
- Remove bogus white-space diff to current.
Fix to readdir+ reply handling. When inserting an entry into the namecache,
initialize the nfsnode's ctime. Otherwise a subsequent lookup purges the
just entered namecache entry.
Approved by: re
rpvar.h 1.9, 1.10
- We know it is called rpclose() so call it directly.
- Fix -Wundef from compiling the amd64 LINT.
- Make rp(4) 64-bit- and endian-clean as well as work on strict alignment
archs.
- Instead of bus_space_{read,write}*(rman_get_bustag(), rman_get_bushandle())
use bus_{read,write}*(). Unlike in 7.0-CURRENT, this has no other benefit
than diff reduction with HEAD.
fix servicecurve check; no point in checking the same sc three times, it
was obviously intended to check all three. has been wrong since the
beginning, 4 years... noticed by Earl Lapus <[email protected]>, Vasil
Dimov <[email protected]> mailed me then, ok mcbride
Skip disabled CPU, because after we sched_bind() to a disabled CPU,
we won't be able to exit from the thread.
Function g_eli_cpu_is_disabled() stoled from kern_pmc.c.
PR: 104669
Reported by: Nikolay Mirin <[email protected]>
Do not mark Bluetooth HID device as "potential keyboard" if its descriptor
has items with CONSUMER page. For now only check for items with KEYBOARD page.
This should prevent bthidd(8) from allocating vkbd(4) keyboard for Microsoft
Bluetooth Explorer mouse.
Approved by: re (bmah)
Overhaul this manpage somewhat:
- Move mentionings of required drivers to the SYNOPSIS where they belong
- Remove cruft (XiG, sheesh) from the EXAMPLES section and re-arrange things to make
somewhat more sense
- Fix an Xref to manpage from ports to mention the corresponsing port
- Remove commented out HISTORY section header
HTT cores. This time make code conditional on !defined(SCHED_ULE), since
SCHED_ULE is generally b0rken due to the fact that it doesn't honour
hlt_cpus_mask when scheduling processes like all other schedulers in the
system do.
I am not sure if such SCHED_ULE behaviour should be considered as a
security flaw, basically it means that anybody running SCHED_ULE kernel
on HTT system still affected by FreeBSD-SA-05:09.htt.
that so_pcb can be invalidated at any time due to an untimely reset.
Move the body of ip_ctloutput() to ip_ctloutput_pcbinfo(), which
accepts a pcbinfo argument, and wrap it with ip_ctloutput(), which
passes a NULL. Modify tcp_ctloutput() to directly invoke
ip_ctloutput_pcbinfo() and pass tcbinfo. Hold the pcbinfo lock when
dereferencing so_pcb and acquiring the inpcb lock in order to prevent
the inpcb from being freed; the pcbinfo lock is then immediately
dropped. This is required as TCP may free the inppcb and invalidate
so_pcb due to a reset at any time in the RELENG_6 network stack, which
otherwise leads to a panic.
This panic might be frequently seen on highly loaded IRC and Samba
servers, which have long-lasting TCP connections, query socket options
frequently, and see a significant number of reset connections.
This change has been merged directly to RELENG_6 as the problem does
not exist in HEAD, where the invariants for so_pcb are much stronger;
the architectural changes in HEAD avoid the need to acquire a global
lock in the socket option path. This change will be merged to
RELENG_6_2.
PR: 102412, 104765
Reviewed by: Diane Bruce <db at db.net>
Tested by: Daniel Austin <daniel at kewlio dot net>,
Kai Gallasch <gallasch at free dot de>
revision 1.240
date: 2006/11/23 00:57:10; author: kensmith; state: Exp; lines: +1 -1
Oops - what people refer to as linux_base-fc4 calls itself linux_base-fc
and that's what pkg_add needs.
Fix a bug which caused a spurious "Fetching 2 metadata files... failed."
error message the first time FreeBSD Update is run on a release which
doesn't need any updates.
Shorten the kernel config file on the make command line to make things
like
NANO_KERNEL=/path/to/kernel.config
work, so multiple images can share the same kernel config file.
listening socket after the pass that cleans those queues. This
results in these connections being orphaned (and leaked). The fix
is to clean up the so queues after detaching the socket from the
protocol. Thanks to ups and jhb for discussions and a thorough code
review.
Approved by: re
revision 1.4
date: 2006/01/14 20:45:02; author: ru; state: Exp; lines: +2 -0
Ignore spurious '\0' first character read on a serial console.
This allows me to "boot -a" over a serial console. Tested on
several machines.
Approved by: ru
> revision 1.108
> date: 2006/11/19 08:12:54; author: kensmith; state: Exp; lines: +15 -19
> Move the check for which disc volume we have/want to after we install
> the package dependencies. Installation of the dependencies may leave
> us on the wrong disc volume.
> revision 1.918
> date: 2006/11/16 23:09:35; author: kensmith; state: Exp; lines: +13 -2
> Move the documentation to its own separate disc to make room for more
> packages on disc2. This will also let users decide if they want to
> have a CD of the docs at all - unless they're disconnected from the
> net they will probably find the Web site more useful.
>
> Reviewed by: ru
Remove the -C option as it does more harm than good. To be fully
compatible, it would have to (at least):
- support the "compat-compat" -T option,
- *not* support the -l, -O, and -v options,
- default to soft updates being disabled.
Worse, the compatibility mode made it impossible to mount_mfs(8)
a file system from fstab(5) with soft updates disabled (-S). [1]
Now, the only difference when called as "mount_mfs" or "mfs" (as
opposed to "mdmfs") is that the file mode of the mount point is
set by default to 01777. All options available to mdmfs(8) are
also available to mount_mfs(8); the -C option is still recognized
but ignored for backward compatibility.
PR: bin/98860 [1]
fragmentation needed other then 0 when we cannot get a security policy.
This changes the code path to match what we have had in HEAD since
rev. 1.312.
PR: kern/91412
Submitted by: Tom Judge <tom tomjudge.com>
The eui64.[ch] and ipv6cp.[ch] were taken from ppp-2.3.11.
However, our stock pppd(8) doesn't provide option_t nor some
utility functions. So, I made some hacks to adjust to our
stock pppd(8).
The sys_bsd.c part was taken from NetBSD with some
modifications to adjust to our stock pppd(8).
usr.sbin/pppd/Makefile: 1.31
usr.sbin/pppd/eui64.c: 1.2
usr.sbin/pppd/eui64.h: 1.1
usr.sbin/pppd/ipv6cp.c: 1.2
usr.sbin/pppd/ipv6cp.h: 1.2
usr.sbin/pppd/main.c: 1.22
usr.sbin/pppd/options.c: 1.25
usr.sbin/pppd/pathnames.h: 1.11
usr.sbin/pppd/pppd.8: 1.27
usr.sbin/pppd/pppd.h: 1.14
usr.sbin/pppd/sys-bsd.c: 1.21
non-MP-safe filesystem if fdx == -1, assuming the in-kernel callers are
not MP-safe. On HEAD, vn_open() after rev. 1.240 of sys/kern/vfs_vnops.c
would keep the Giant locked when the MPSAFE flag is given.
The difference in the API caused the auditctl() syscall code to try to
unlock non-locked Giant for non-MP-safe filesystems, for instance, UFS
when QUOTA is compiled in.
This is direct commit to RELENG_6 to accomodate for RELENG_6' vn_open().
Reported by: Steve Wills (steve at stevenwills com)
Reviewed by: rwatson
Approved by: re (bmah)
X-MFC to RELENG_6_2 after: 3 days
1. NO_FORTH needs to be defined
2. bootpd.c rev 1.24: make tv_sec a time_t
3. authpf.c rev 1.7: handle timeval.tv_sec change from long to time_t
Approved by: re(BMAH)
is the name or IP address of the name server to query. This can be an IPv4 address in dotted\-decimal notation or an IPv6 address in colon\-delimited notation. When the supplied
\fIserver\fR
@@ -86,10 +91,10 @@ argument is provided,
consults
\fI/etc/resolv.conf\fR
and queries the name servers listed there. The reply from the name server that responds is displayed.
.TP
.TP3n
\fBname\fR
is the name of the resource record that is to be looked up.
.TP
.TP3n
\fBtype\fR
indicates what type of query is required \(em ANY, A, MX, SIG, etc.
\fItype\fR
@@ -197,18 +202,18 @@ Each query option is identified by a keyword preceded by a plus sign (+). Some k
no
to negate the meaning of that keyword. Other keywords assign values to options like the timeout interval. They have the form
\fB+keyword=value\fR. The query options are:
.TP
.TP3n
\fB+[no]tcp\fR
Use [do not use] TCP when querying name servers. The default behaviour is to use UDP unless an AXFR or IXFR query is requested, in which case a TCP connection is used.
.TP
.TP3n
\fB+[no]vc\fR
Use [do not use] TCP when querying name servers. This alternate syntax to
\fI+[no]tcp\fR
is provided for backwards compatibility. The "vc" stands for "virtual circuit".
.TP
.TP3n
\fB+[no]ignore\fR
Ignore truncation in UDP responses instead of retrying with TCP. By default, TCP retries are performed.
.TP
.TP3n
\fB+domain=somename\fR
Set the search list to contain the single domain
\fIsomename\fR, as if specified in a
@@ -217,35 +222,35 @@ directive in
\fI/etc/resolv.conf\fR, and enable search list processing as if the
\fI+search\fR
option were given.
.TP
.TP3n
\fB+[no]search\fR
Use [do not use] the search list defined by the searchlist or domain directive in
\fIresolv.conf\fR
(if any). The search list is not used by default.
.TP
.TP3n
\fB+[no]defname\fR
Deprecated, treated as a synonym for
\fI+[no]search\fR
.TP
.TP3n
\fB+[no]aaonly\fR
Sets the "aa" flag in the query.
.TP
.TP3n
\fB+[no]aaflag\fR
A synonym for
\fI+[no]aaonly\fR.
.TP
.TP3n
\fB+[no]adflag\fR
Set [do not set] the AD (authentic data) bit in the query. The AD bit currently has a standard meaning only in responses, not in queries, but the ability to set the bit in the query is provided for completeness.
.TP
.TP3n
\fB+[no]cdflag\fR
Set [do not set] the CD (checking disabled) bit in the query. This requests the server to not perform DNSSEC validation of responses.
.TP
.TP3n
\fB+[no]cl\fR
Display [do not display] the CLASS when printing the record.
.TP
.TP3n
\fB+[no]ttlid\fR
Display [do not display] the TTL when printing the record.
.TP
.TP3n
\fB+[no]recurse\fR
Toggle the setting of the RD (recursion desired) bit in the query. This bit is set by default, which means
\fBdig\fR
@@ -254,74 +259,74 @@ normally sends recursive queries. Recursion is automatically disabled when the
or
\fI+trace\fR
query options are used.
.TP
.TP3n
\fB+[no]nssearch\fR
When this option is set,
\fBdig\fR
attempts to find the authoritative name servers for the zone containing the name being looked up and display the SOA record that each name server has for the zone.
.TP
.TP3n
\fB+[no]trace\fR
Toggle tracing of the delegation path from the root name servers for the name being looked up. Tracing is disabled by default. When tracing is enabled,
\fBdig\fR
makes iterative queries to resolve the name being looked up. It will follow referrals from the root servers, showing the answer from each server that was used to resolve the lookup.
.TP
.TP3n
\fB+[no]cmd\fR
toggles the printing of the initial comment in the output identifying the version of
\fBdig\fR
and the query options that have been applied. This comment is printed by default.
.TP
.TP3n
\fB+[no]short\fR
Provide a terse answer. The default is to print the answer in a verbose form.
.TP
.TP3n
\fB+[no]identify\fR
Show [or do not show] the IP address and port number that supplied the answer when the
\fI+short\fR
option is enabled. If short form answers are requested, the default is not to show the source address and port number of the server that provided the answer.
.TP
.TP3n
\fB+[no]comments\fR
Toggle the display of comment lines in the output. The default is to print comments.
.TP
.TP3n
\fB+[no]stats\fR
This query option toggles the printing of statistics: when the query was made, the size of the reply and so on. The default behaviour is to print the query statistics.
.TP
.TP3n
\fB+[no]qr\fR
Print [do not print] the query as it is sent. By default, the query is not printed.
.TP
.TP3n
\fB+[no]question\fR
Print [do not print] the question section of a query when an answer is returned. The default is to print the question section as a comment.
.TP
.TP3n
\fB+[no]answer\fR
Display [do not display] the answer section of a reply. The default is to display it.
.TP
.TP3n
\fB+[no]authority\fR
Display [do not display] the authority section of a reply. The default is to display it.
.TP
.TP3n
\fB+[no]additional\fR
Display [do not display] the additional section of a reply. The default is to display it.
.TP
.TP3n
\fB+[no]all\fR
Set or clear all display flags.
.TP
.TP3n
\fB+time=T\fR
Sets the timeout for a query to
\fIT\fR
seconds. The default time out is 5 seconds. An attempt to set
\fIT\fR
to less than 1 will result in a query timeout of 1 second being applied.
.TP
.TP3n
\fB+tries=T\fR
Sets the number of times to try UDP queries to server to
\fIT\fR
instead of the default, 3. If
\fIT\fR
is less than or equal to zero, the number of tries is silently rounded up to 1.
.TP
.TP3n
\fB+retry=T\fR
Sets the number of times to retry UDP queries to server to
\fIT\fR
instead of the default, 2. Unlike
\fI+tries\fR, this does not include the initial query.
.TP
.TP3n
\fB+ndots=D\fR
Set the number of dots that have to appear in
\fIname\fR
@@ -334,29 +339,29 @@ or
\fBdomain\fR
directive in
\fI/etc/resolv.conf\fR.
.TP
.TP3n
\fB+bufsize=B\fR
Set the UDP message buffer size advertised using EDNS0 to
\fIB\fR
bytes. The maximum and minimum sizes of this buffer are 65535 and 0 respectively. Values outside this range are rounded up or down appropriately.
.TP
.TP3n
\fB+[no]multiline\fR
Print records like the SOA records in a verbose multi\-line format with human\-readable comments. The default is to print each record on a single line, to facilitate machine parsing of the
\fBdig\fR
output.
.TP
.TP3n
\fB+[no]fail\fR
Do not try the next server if you receive a SERVFAIL. The default is to not try the next server which is the reverse of normal stub resolver behaviour.
.TP
.TP3n
\fB+[no]besteffort\fR
Attempt to display the contents of messages which are malformed. The default is to not display malformed answers.
.TP
.TP3n
\fB+[no]dnssec\fR
Requests DNSSEC records be sent by setting the DNSSEC OK bit (DO) in the OPT record in the additional section of the query.
.TP
.TP3n
\fB+[no]sigchase\fR
Chase DNSSEC signature chains. Requires dig be compiled with \-DDIG_SIGCHASE.
.TP
.TP3n
\fB+trusted\-key=####\fR
Specifies a file containing trusted keys to be used with
\fB+sigchase\fR. Each DNSKEY record must be on its own line.
@@ -370,7 +375,7 @@ then
in the current directory.
.sp
Requires dig be compiled with \-DDIG_SIGCHASE.
.TP
.TP3n
\fB+[no]topdown\fR
When chasing DNSSEC signature chains perform a top down validation. Requires dig be compiled with \-DDIG_SIGCHASE.
.SH"MULTIPLE QUERIES"
@@ -389,9 +394,11 @@ A global set of query options, which should be applied to all queries, can also
\fB+[no]cmd\fR
option) can be overridden by a query\-specific set of query options. For example:
.sp
.RS3n
.nf
dig +qr www.isc.org any \-x 127.0.0.1 isc.org ns +noqr
.fi
.RE
.sp
shows how
\fBdig\fR
@@ -421,3 +428,5 @@ RFC1035.
.SH"BUGS "
.PP
There are probably too many query options.
.SH"COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
@@ -39,26 +42,28 @@ has two modes: interactive and non\-interactive. Interactive mode allows the use
.SH"ARGUMENTS"
.PP
Interactive mode is entered in the following cases:
.TP3
.TP3n
1.
when no arguments are given (the default name server will be used)
.TP
.TP3n
2.
when the first argument is a hyphen (\-) and the second argument is the host name or Internet address of a name server.
.sp
.RE
.PP
Non\-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument. The optional second argument specifies the host name or address of a name server.
.PP
Options can also be specified on the command line if they precede the arguments and are prefixed with a hyphen. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type:
Look up information for host using the current default server or using server, if specified. If host is an Internet address and the query type is A or PTR, the name of the host is returned. If host is a name and does not have a trailing period, the search list is used to qualify the name.
.sp
To look up a host not in the current domain, append a period to the name.
.TP
.TP3n
\fBserver\fR\fIdomain\fR
.TP
.TP3n
\fBlserver\fR\fIdomain\fR
Change the default server to
\fIdomain\fR;
@@ -67,107 +72,107 @@ uses the initial server to look up information about
\fIdomain\fR, while
\fBserver\fR
uses the current default server. If an authoritative answer can't be found, the names of servers that might have the answer are returned.
.TP
.TP3n
\fBroot\fR
not implemented
.TP
.TP3n
\fBfinger\fR
not implemented
.TP
.TP3n
\fBls\fR
not implemented
.TP
.TP3n
\fBview\fR
not implemented
.TP
.TP3n
\fBhelp\fR
not implemented
.TP
.TP3n
\fB?\fR
not implemented
.TP
.TP3n
\fBexit\fR
Exits the program.
.TP
.TP3n
\fBset\fR\fIkeyword\fR\fI[=value]\fR
This command is used to change state information that affects the lookups. Valid keywords are:
.RS
.TP
.RS3n
.TP3n
\fBall\fR
Prints the current values of the frequently used options to
\fBset\fR. Information about the current default server and host is also printed.
.TP
.TP3n
\fBclass=\fR\fIvalue\fR
Change the query class to one of:
.RS
.TP
.RS3n
.TP3n
\fBIN\fR
the Internet class
.TP
.TP3n
\fBCH\fR
the Chaos class
.TP
.TP3n
\fBHS\fR
the Hesiod class
.TP
.TP3n
\fBANY\fR
wildcard
.RE
.IP
.IP""3n
The class specifies the protocol group of the information.
.sp
(Default = IN; abbreviation = cl)
.TP
.TP3n
\fB\fI[no]\fR\fR\fBdebug\fR
Turn debugging mode on. A lot more information is printed about the packet sent to the server and the resulting answer.
.sp
(Default = nodebug; abbreviation =
[no]deb)
.TP
.TP3n
\fB\fI[no]\fR\fR\fBd2\fR
Turn debugging mode on. A lot more information is printed about the packet sent to the server and the resulting answer.
.sp
(Default = nod2)
.TP
.TP3n
\fBdomain=\fR\fIname\fR
Sets the search list to
\fIname\fR.
.TP
.TP3n
\fB\fI[no]\fR\fR\fBsearch\fR
If the lookup request contains at least one period but doesn't end with a trailing period, append the domain names in the domain search list to the request until an answer is received.
.sp
(Default = search)
.TP
.TP3n
\fBport=\fR\fIvalue\fR
Change the default TCP/UDP name server port to
\fIvalue\fR.
.sp
(Default = 53; abbreviation = po)
.TP
.TP3n
\fBquerytype=\fR\fIvalue\fR
.TP
.TP3n
\fBtype=\fR\fIvalue\fR
Change the top of the information query.
Change the type of the information query.
.sp
(Default = A; abbreviations = q, ty)
.TP
.TP3n
\fB\fI[no]\fR\fR\fBrecurse\fR
Tell the name server to query other servers if it does not have the information.
.sp
(Default = recurse; abbreviation = [no]rec)
.TP
.TP3n
\fBretry=\fR\fInumber\fR
Set the number of retries to number.
.TP
.TP3n
\fBtimeout=\fR\fInumber\fR
Change the initial timeout interval for waiting for a reply to number seconds.
.TP
.TP3n
\fB\fI[no]\fR\fR\fBvc\fR
Always use a virtual circuit when sending requests to the server.
.sp
(Default = novc)
.RE
.IP
.IP""3n
.SH"FILES"
.PP
\fI/etc/resolv.conf\fR
@@ -179,3 +184,5 @@ Always use a virtual circuit when sending requests to the server.
.SH"AUTHOR"
.PP
Andrew Cherenson
.SH"COPYRIGHT"
Copyright \(co 2004\-2006 Internet Systems Consortium, Inc. ("ISC")
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535 and RFC <TBA\\>. It can also generate keys for use with TSIG (Transaction Signatures), as defined in RFC 2845.
.SH "OPTIONS"
.TP
.TP 3n
\-a \fIalgorithm\fR
Selects the cryptographic algorithm. The value of
\fBalgorithm\fR
@@ -45,37 +48,37 @@ must be one of RSAMD5 (RSA) or RSASHA1, DSA, DH (Diffie Hellman), or HMAC\-MD5.
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended. For TSIG, HMAC\-MD5 is mandatory.
.sp
Note 2: HMAC\-MD5 and DH automatically set the \-k flag.
.TP
.TP 3n
\-b \fIkeysize\fR
Specifies the number of bits in the key. The choice of key size depends on the algorithm used. RSAMD5 / RSASHA1 keys must be between 512 and 2048 bits. Diffie Hellman keys must be between 128 and 4096 bits. DSA keys must be between 512 and 1024 bits and an exact multiple of 64. HMAC\-MD5 keys must be between 1 and 512 bits.
.TP
.TP 3n
\-n \fInametype\fR
Specifies the owner type of the key. The value of
\fBnametype\fR
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY). These values are case insensitive.
.TP
.TP 3n
\-c \fIclass\fR
Indicates that the DNS record containing the key should have the specified class. If not specified, class IN is used.
.TP
.TP 3n
\-e
If generating an RSAMD5/RSASHA1 key, use a large exponent.
.TP
.TP 3n
\-f \fIflag\fR
Set the specified flag in the flag field of the KEY/DNSKEY record. The only recognized flag is KSK (Key Signing Key) DNSKEY.
.TP
.TP 3n
\-g \fIgenerator\fR
If generating a Diffie Hellman key, use this generator. Allowed values are 2 and 5. If no generator is specified, a known prime from RFC 2539 will be used if possible; otherwise the default is 2.
.TP
.TP 3n
\-h
Prints a short summary of the options and arguments to
\fBdnssec\-keygen\fR.
.TP
.TP 3n
\-k
Generate KEY records rather than DNSKEY records.
.TP
.TP 3n
\-p \fIprotocol\fR
Sets the protocol value for the generated key. The protocol is a number between 0 and 255. The default is 3 (DNSSEC). Other possible values for this argument are listed in RFC 2535 and its successors.
.TP
.TP 3n
\-r \fIrandomdev\fR
Specifies the source of randomness. If the operating system does not provide a
\fI/dev/random\fR
@@ -84,15 +87,15 @@ or equivalent device, the default source of randomness is keyboard input.
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
.TP
.TP 3n
\-s \fIstrength\fR
Specifies the strength value of the key. The strength is a number between 0 and 15, and currently has no defined purpose in DNSSEC.
.TP
.TP 3n
\-t \fItype\fR
Indicates the use of the key.
\fBtype\fR
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default is AUTHCONF. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data.
.TP
.TP 3n
\-v \fIlevel\fR
Sets the debugging level.
.SH "GENERATED KEYS"
@@ -102,18 +105,20 @@ When
completes successfully, it prints a string of the form
\fIKnnnn.+aaa+iiiii\fR
to the standard output. This is an identification string for the key it has generated.
.TP 3
.TP 3n
\(bu
\fInnnn\fR
is the key name.
.TP
.TP 3n
\(bu
\fIaaa\fR
is the numeric representation of the algorithm.
.TP
.TP 3n
\(bu
\fIiiiii\fR
is the key identifier (or footprint).
.sp
.RE
.PP
\fBdnssec\-keygen\fR
creates two file, with names based on the printed string.
@@ -162,3 +167,5 @@ RFC 2539.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
@@ -38,49 +41,49 @@ signs a zone. It generates NSEC and RRSIG records and produces a signed version
\fIkeyset\fR
file for each child zone.
.SH "OPTIONS"
.TP
.TP 3n
\-a
Verify all generated signatures.
.TP
.TP 3n
\-c \fIclass\fR
Specifies the DNS class of the zone.
.TP
.TP 3n
\-k \fIkey\fR
Treat specified key as a key signing key ignoring any key flags. This option may be specified multiple times.
.TP
.TP 3n
\-l \fIdomain\fR
Generate a DLV set in addition to the key (DNSKEY) and DS sets. The domain is appended to the name of the records.
.TP
.TP 3n
\-d \fIdirectory\fR
Look for
\fIkeyset\fR
files in
\fBdirectory\fR
as the directory
.TP
.TP 3n
\-g
Generate DS records for child zones from keyset files. Existing DS records will be removed.
.TP
.TP 3n
\-s \fIstart\-time\fR
Specify the date and time when the generated RRSIG records become valid. This can be either an absolute or relative time. An absolute start time is indicated by a number in YYYYMMDDHHMMSS notation; 20000530144500 denotes 14:45:00 UTC on May 30th, 2000. A relative start time is indicated by +N, which is N seconds from the current time. If no
\fBstart\-time\fR
is specified, the current time minus 1 hour (to allow for clock skew) is used.
.TP
.TP 3n
\-e \fIend\-time\fR
Specify the date and time when the generated RRSIG records expire. As with
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation. A time relative to the start time is indicated with +N, which is N seconds from the start time. A time relative to the current time is indicated with now+N. If no
\fBend\-time\fR
is specified, 30 days from the start time is used as a default.
.TP
.TP 3n
\-f \fIoutput\-file\fR
The name of the output file containing the signed zone. The default is to append
\fI.signed\fR
to the input file.
.TP
.TP 3n
\-h
Prints a short summary of the options and arguments to
\fBdnssec\-signzone\fR.
.TP
.TP 3n
\-i \fIinterval\fR
When a previously signed zone is passed as input, records may be resigned. The
\fBinterval\fR
@@ -93,16 +96,16 @@ or
are specified,
\fBdnssec\-signzone\fR
generates signatures that are valid for 30 days, with a cycle interval of 7.5 days. Therefore, if any existing RRSIG records are due to expire in less than 7.5 days, they would be replaced.
.TP
.TP 3n
\-n \fIncpus\fR
Specifies the number of threads to use. By default, one thread is started for each detected CPU.
.TP
.TP 3n
\-o \fIorigin\fR
The zone origin. If not specified, the name of the zone file is assumed to be the origin.
.TP
.TP 3n
\-p
Use pseudo\-random data when signing the zone. This is faster, but less secure, than using real random data. This option may be useful when signing large zones or when the entropy source is limited.
.TP
.TP 3n
\-r \fIrandomdev\fR
Specifies the source of randomness. If the operating system does not provide a
\fI/dev/random\fR
@@ -111,19 +114,19 @@ or equivalent device, the default source of randomness is keyboard input.
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
.TP
.TP 3n
\-t
Print statistics at completion.
.TP
.TP 3n
\-v \fIlevel\fR
Sets the debugging level.
.TP
.TP 3n
\-z
Ignore KSK flag on key when determining what to sign.
.TP
.TP 3n
zonefile
The file containing the zone to be signed.
.TP
.TP 3n
key
The keys used to sign the zone. If no keys are specified, the default all zone keys that have private key files in the current directory.
.SH "EXAMPLE"
@@ -155,3 +158,5 @@ RFC 2535.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
@@ -57,41 +60,41 @@ entries are present, or if forwarding fails,
\fBlwresd\fR
resolves the queries autonomously starting at the root name servers, using a built\-in list of root server hints.
.SH "OPTIONS"
.TP
.TP 3n
\-C \fIconfig\-file\fR
Use
\fIconfig\-file\fR
as the configuration file instead of the default,
\fI/etc/resolv.conf\fR.
.TP
.TP 3n
\-d \fIdebug\-level\fR
Set the daemon's debug level to
\fIdebug\-level\fR. Debugging traces from
\fBlwresd\fR
become more verbose as the debug level increases.
.TP
.TP 3n
\-f
Run the server in the foreground (i.e. do not daemonize).
.TP
.TP 3n
\-g
Run the server in the foreground and force all logging to
\fIstderr\fR.
.TP
.TP 3n
\-n \fI#cpus\fR
Create
\fI#cpus\fR
worker threads to take advantage of multiple CPUs. If not specified,
\fBlwresd\fR
will try to determine the number of CPUs present and create one thread per CPU. If it is unable to determine the number of CPUs, a single worker thread will be created.
.TP
.TP 3n
\-P \fIport\fR
Listen for lightweight resolver queries on port
\fIport\fR. If not specified, the default is port 921.
.TP
.TP 3n
\-p \fIport\fR
Send DNS lookups to port
\fIport\fR. If not specified, the default is port 53. This provides a way of testing the lightweight resolver daemon with a name server that listens for queries on a non\-standard port number.
.TP
.TP 3n
\-s
Write memory usage statistics to
\fIstdout\fR
@@ -100,7 +103,7 @@ on exit.
.B "Note:"
This option is mainly of interest to BIND 9 developers and may be removed or changed in a future release.
.RE
.TP
.TP 3n
\-t \fIdirectory\fR
\fBchroot()\fR
to
@@ -114,20 +117,20 @@ option, as chrooting a process running as root doesn't enhance security on most
\fBchroot()\fR
is defined allows a process with root privileges to escape a chroot jail.
.RE
.TP
.TP 3n
\-u \fIuser\fR
\fBsetuid()\fR
to
\fIuser\fR
after completing privileged operations, such as creating sockets that listen on privileged ports.
.TP
.TP 3n
\-v
Report the version number and exit.
.SH "FILES"
.TP
.TP 3n
\fI/etc/resolv.conf\fR
The default configuration file.
.TP
.TP 3n
\fI/var/run/lwresd.pid\fR
The default process\-id file.
.SH "SEE ALSO"
@@ -138,3 +141,5 @@ The default process\-id file.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
@@ -41,21 +44,21 @@ When invoked without arguments,
will read the default configuration file
\fI/etc/named.conf\fR, read any initial data, and listen for queries.
.SH "OPTIONS"
.TP
.TP 3n
\-4
Use IPv4 only even if the host machine is capable of IPv6.
\fB\-4\fR
and
\fB\-6\fR
are mutually exclusive.
.TP
.TP 3n
\-6
Use IPv6 only even if the host machine is capable of IPv4.
\fB\-4\fR
and
\fB\-6\fR
are mutually exclusive.
.TP
.TP 3n
\-c \fIconfig\-file\fR
Use
\fIconfig\-file\fR
@@ -65,31 +68,31 @@ as the configuration file instead of the default,
option in the configuration file,
\fIconfig\-file\fR
should be an absolute pathname.
.TP
.TP 3n
\-d \fIdebug\-level\fR
Set the daemon's debug level to
\fIdebug\-level\fR. Debugging traces from
\fBnamed\fR
become more verbose as the debug level increases.
.TP
.TP 3n
\-f
Run the server in the foreground (i.e. do not daemonize).
.TP
.TP 3n
\-g
Run the server in the foreground and force all logging to
\fIstderr\fR.
.TP
.TP 3n
\-n \fI#cpus\fR
Create
\fI#cpus\fR
worker threads to take advantage of multiple CPUs. If not specified,
\fBnamed\fR
will try to determine the number of CPUs present and create one thread per CPU. If it is unable to determine the number of CPUs, a single worker thread will be created.
.TP
.TP 3n
\-p \fIport\fR
Listen for queries on port
\fIport\fR. If not specified, the default is port 53.
.TP
.TP 3n
\-s
Write memory usage statistics to
\fIstdout\fR
@@ -98,7 +101,7 @@ on exit.
.B "Note:"
This option is mainly of interest to BIND 9 developers and may be removed or changed in a future release.
.RE
.TP
.TP 3n
\-t \fIdirectory\fR
\fBchroot()\fR
to
@@ -112,7 +115,7 @@ option, as chrooting a process running as root doesn't enhance security on most
\fBchroot()\fR
is defined allows a process with root privileges to escape a chroot jail.
.RE
.TP
.TP 3n
\-u \fIuser\fR
\fBsetuid()\fR
to
@@ -131,10 +134,10 @@ option only works when
is run on kernel 2.2.18 or later, or kernel 2.3.99\-pre3 or later, since previous kernels did not allow privileges to be retained after
\fBsetuid()\fR.
.RE
.TP
.TP 3n
\-v
Report the version number and exit.
.TP
.TP 3n
\-x \fIcache\-file\fR
Load data from
\fIcache\-file\fR
@@ -148,10 +151,10 @@ This option must not be used. It is only of interest to BIND 9 developers and ma
In routine operation, signals should not be used to control the nameserver;
\fBrndc\fR
should be used instead.
.TP
.TP 3n
SIGHUP
Force a reload of the server.
.TP
.TP 3n
SIGINT, SIGTERM
Shut down the server.
.PP
@@ -163,10 +166,10 @@ The
configuration file is too complex to describe in detail here. A complete description is provided in the
BIND 9 Administrator Reference Manual.
.SH "FILES"
.TP
.TP 3n
\fI/etc/named.conf\fR
The default configuration file.
.TP
.TP 3n
\fI/var/run/named.pid\fR
The default process\-id file.
.SH "SEE ALSO"
@@ -176,7 +179,10 @@ RFC 1034,
RFC 1035,
\fBrndc\fR(8),
\fBlwresd\fR(8),
\fBnamed.conf\fR(5),
BIND 9 Administrator Reference Manual.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004\-2006 Internet Systems Consortium, Inc. ("ISC")
Displays the current message, containing all of the prerequisites and updates specified since the last send.
.TP
.TP 3n
.HP 5 \fBsend\fR
Sends the current message. This is equivalent to entering a blank line.
.TP
.TP 3n
.HP 7 \fBanswer\fR
Displays the answer.
.PP
@@ -246,12 +251,14 @@ could be used to insert and delete resource records from the
zone. Notice that the input in each example contains a trailing blank line so that a group of commands are sent as one dynamic update request to the master name server for
\fBexample.com\fR.
.sp
.RS 3n
.nf
# nsupdate
> update delete oldhost.example.com A
> update add newhost.example.com 86400 A 172.16.1.1
> send
.fi
.RE
.sp
.PP
Any A records for
@@ -260,25 +267,27 @@ are deleted. and an A record for
\fBnewhost.example.com\fR
it IP address 172.16.1.1 is added. The newly\-added record has a 1 day TTL (86400 seconds)
The prerequisite condition gets the name server to check that there are no resource records of any type for
\fBnickname.example.com\fR. If there are, the update request fails. If this name does not exist, a CNAME for it is added. This ensures that when the CNAME is added, it cannot conflict with the long\-standing rule in RFC1034 that a name must not exist as any other record type if it exists as a CNAME. (The rule has been updated for DNSSEC in RFC2535 to allow CNAMEs to have RRSIG, DNSKEY and NSEC records.)
.SH "FILES"
.TP
.TP 3n
\fB/etc/resolv.conf\fR
used to identify default name server
.TP
.TP 3n
\fBK{name}.+157.+{random}.key\fR
base\-64 encoding of HMAC\-MD5 key created by
\fBdnssec\-keygen\fR(8).
.TP
.TP 3n
\fBK{name}.+157.+{random}.private\fR
base\-64 encoding of HMAC\-MD5 key created by
\fBdnssec\-keygen\fR(8).
@@ -296,3 +305,5 @@ base\-64 encoding of HMAC\-MD5 key created by
.SH "BUGS"
.PP
The TSIG key is redundantly stored in two separate files. This is a consequence of nsupdate using the DST library for its cryptographic operations, and may change in future releases.
.SH "COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
@@ -50,13 +53,13 @@ named the only supported authentication algorithm is HMAC\-MD5, which uses a sha
\fBrndc\fR
reads a configuration file to determine how to contact the name server and decide what algorithm and key it should use.
.SH "OPTIONS"
.TP
.TP 3n
\-c \fIconfig\-file\fR
Use
\fIconfig\-file\fR
as the configuration file instead of the default,
\fI/etc/rndc.conf\fR.
.TP
.TP 3n
\-k \fIkey\-file\fR
Use
\fIkey\-file\fR
@@ -66,20 +69,20 @@ as the key file instead of the default,
will be used to authenticate commands sent to the server if the
\fIconfig\-file\fR
does not exist.
.TP
.TP 3n
\-s \fIserver\fR
\fIserver\fR
is the name or address of the server which matches a server statement in the configuration file for
\fBrndc\fR. If no server is supplied on the command line, the host named by the default\-server clause in the option statement of the configuration file will be used.
.TP
.TP 3n
\-p \fIport\fR
Send commands to TCP port
\fIport\fR
instead of BIND 9's default control channel port, 953.
.TP
.TP 3n
\-V
Enable verbose logging.
.TP
.TP 3n
\-y \fIkeyid\fR
Use the key
\fIkeyid\fR
@@ -111,8 +114,11 @@ Several error messages could be clearer.
.PP
\fBrndc.conf\fR(5),
\fBnamed\fR(8),
\fBnamed.conf\fR(5)\fBndc\fR(8),
\fBnamed.conf\fR(5)
\fBndc\fR(8),
BIND 9 Administrator Reference Manual.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
Loaded 100 of 4004 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.