| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
'RELENG_5_2_1_RELEASE'.
This commit was manufactured to restore the state of the 5.2.1-RELEASE image.
Releases prior to 5.3-RELEASE are omitting the secure/ and crypto/ subdirs.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
if_xname, if_dname, and if_dunit. if_xname is the name of the interface
and if_dname/unit are the driver name and instance.
This change paves the way for interface renaming and enhanced pseudo
device creation and configuration symantics.
Approved By: re (in principle)
Reviewed By: njl, imp
Tested On: i386, amd64, sparc64
Obtained From: NetBSD (if_xname)
Notes:
svn path=/head/; revision=121816
|
| |
|
|
|
|
|
| |
Also some minor style cleanups.
Notes:
svn path=/head/; revision=119418
|
| |
|
|
|
|
|
|
| |
tree for two or more years now), except in a few places where there's
code to be compatible with older versions of FreeBSD.
Notes:
svn path=/head/; revision=119277
|
| |
|
|
|
|
|
|
|
|
| |
ushort. In most of these files, there was a mixture of both styles and
this change just makes them self-consistent.
Requested by: bde (kern_ktrace.c)
Notes:
svn path=/head/; revision=118607
|
| |
|
|
|
|
|
|
| |
to use the new OPENVCC and CLOSEVCC calls that allow the sepcification
of traffic parameters for the connections.
Notes:
svn path=/head/; revision=118548
|
| |
|
|
|
|
|
| |
operations on VCs.
Notes:
svn path=/head/; revision=118534
|
| |
|
|
|
|
|
|
| |
whether we use AAL5 or not from the aal field of the channel parameters
instead of the flag in the pseudo header. This flag will go away soon.
Notes:
svn path=/head/; revision=118533
|
| |
|
|
| |
Notes:
svn path=/head/; revision=118532
|
| |
|
|
| |
Notes:
svn path=/head/; revision=118523
|
| |
|
|
| |
Notes:
svn path=/head/; revision=118495
|
| |
|
|
|
|
|
| |
last driver that did not know about those.
Notes:
svn path=/head/; revision=118494
|
| |
|
|
|
|
|
| |
the home-grown version.
Notes:
svn path=/head/; revision=118491
|
| |
|
|
|
|
|
| |
commit.
Notes:
svn path=/head/; revision=118490
|
| |
|
|
| |
Notes:
svn path=/head/; revision=118489
|
| |
|
|
|
|
|
|
|
|
| |
preparation for supporting the OPENVCC and CLOSEVCC ioctls which
are needed for ng_atm. This required some re-organisation of the code
(mostly converting array indexes to pointers). This also gives us
an array of open vccs that will help in using the generic GETVCCS handler.
Notes:
svn path=/head/; revision=118487
|
| |
|
|
|
|
|
|
| |
Otherwise the interface will report RUNNING to ifconfig after doing
'ifconfig down' although it isn't running anymore.
Notes:
svn path=/head/; revision=118484
|
| |
|
|
|
|
|
|
|
| |
callback will never be deferred. ATM needs to prevent cell and packet
ordering. Also use the default mutex and lock functions (those that
panic) for the tag creation.
Notes:
svn path=/head/; revision=117641
|
| |
|
|
|
|
|
| |
Pointed out by: nick@garage.freebsd.pl
Notes:
svn path=/head/; revision=117227
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg.
Lockfunc allows a driver to provide a function for managing its locking
semantics while using busdma. At the moment, this is used for the
asynchronous busdma_swi and callback mechanism. Two lockfunc implementations
are provided: busdma_lock_mutex() performs standard mutex operations on the
mutex that is specified from lockfuncarg. dftl_lock() is a panic
implementation and is defaulted to when NULL, NULL are passed to
bus_dma_tag_create(). The only time that NULL, NULL should ever be used is
when the driver ensures that bus_dmamap_load() will not be deferred.
Drivers that do not provide their own locking can pass
busdma_lock_mutex,&Giant args in order to preserve the former behaviour.
sparc64 and powerpc do not provide real busdma_swi functions, so this is
largely a noop on those platforms. The busdma_swi on is64 is not properly
locked yet, so warnings will be emitted on this platform when busdma
callback deferrals happen.
If anyone gets panics or warnings from dflt_lock() being called, please
let me know right away.
Reviewed by: tmm, gibbs
Notes:
svn path=/head/; revision=117126
|
| |
|
|
| |
Notes:
svn path=/head/; revision=116297
|
| |
|
|
|
|
|
|
|
|
| |
toggle several media options (sonet/sdh, for example) with ifconfig and
to see the carrier state in ifconfig's output. It gives also read/write
access (given the right privilegs) to the S/Uni registers to user space
programs.
Notes:
svn path=/head/; revision=116294
|
| |
|
|
| |
Notes:
svn path=/head/; revision=116192
|
| |
|
|
|
|
|
|
|
|
|
|
| |
While a string is readable without a tool, an array is easier to process for
a monitoring application. This also prevents the extra hoops we need with
sbufs and locking.
Move the mtx_init() in en_attach() higher before the first failure point so
that we can unconditionally destroy it in en_destroy().
Notes:
svn path=/head/; revision=115833
|
| |
|
|
|
|
|
| |
Found by: FlexeLint
Notes:
svn path=/head/; revision=115496
|
| |
|
|
|
|
|
|
|
| |
ILMI daemons. Factor out common softc fields for all ATM interfaces that
need to be externally visible into an ifatm structure and make the midway
driver using this structure and fill the MIB.
Notes:
svn path=/head/; revision=114739
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(currently) only consumer (en).
Add a sysctl node hw.atm where the atm drivers will hook on their hardware
sysctl sub-trees.
Make atm_ifattach call if_attach and remove the corresponding call to if_attach
from en. Create atm_ifdetach and use that in en.
While the last change actually changes the interface this is not a problem in
practice because the only other consumer of this API is an older LANAI driver
on the net, that is not ready for current anyway.
Reviewed by: -atm
Notes:
svn path=/head/; revision=114201
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
following changes have been done:
- stylify. The original code was too hard to read.
- get rid of a number of compilation options (Adaptec-only, Eni-only, no-DMA).
- more debugging features.
- locking. This is not correct yet in the absence of interface layer locking,
but is correct enough to not to cause lock order reversals.
- remove RAW mode. There are no users of this in the tree and I doubt that
there are any.
- remove NetBSD compatibility code. There was no way to keep NetBSD non-busdma
and FreeBSD busdma code together.
- if_en now buildable as a module.
This has been actively tested on sparc64 and i386 with ENI server and
client cards and an Adaptec card (thanks to kjc).
Reviewed by: mdodd, arr
Notes:
svn path=/head/; revision=114018
|
| |
|
|
|
|
|
|
|
|
|
| |
network layer (ether).
- Don't abuse module names to facilitate ifconfig module loading;
such abuse isn't really needed. (And if we do need type information
associated with a module then we should make it explicit and not
use hacks.)
Notes:
svn path=/head/; revision=113506
|
| |
|
|
|
|
|
|
|
|
|
| |
Harti Brandt's effort.
remove the DMA test to detect problems of the first generation PCI chipsets
back in 1998.
it is no longer needed and has been the source of the false alarm that
the driver uses too much stack space.
Notes:
svn path=/head/; revision=112135
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
drain routines are done by swi_net, which allows for better queue control
at some future point. Packets may also be directly dispatched to a netisr
instead of queued, this may be of interest at some installations, but
currently defaults to off.
Reviewed by: hsu, silby, jayanth, sam
Sponsored by: DARPA, NAI Labs
Notes:
svn path=/head/; revision=111888
|
| |
|
|
|
|
|
| |
Approved by: trb
Notes:
svn path=/head/; revision=111119
|
| |
|
|
|
|
|
| |
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
Notes:
svn path=/head/; revision=109623
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
were sometimes propagated using M_COPY_PKTHDR which actually did
something between a "move" and a "copy" operation. This is replaced
by M_MOVE_PKTHDR (which copies the pkthdr contents and "removes" it
from the source mbuf) and m_dup_pkthdr which copies the packet
header contents including any m_tag chain. This corrects numerous
problems whereby mbuf tags could be lost during packet manipulations.
These changes also introduce arguments to m_tag_copy and m_tag_copy_chain
to specify if the tag copy work should potentially block. This
introduces an incompatibility with openbsd which we may want to revisit.
Note that move/dup of packet headers does not handle target mbufs
that have a cluster bound to them. We may want to support this;
for now we watch for it with an assert.
Finally, M_COPYFLAGS was updated to include M_FIRSTFRAG|M_LASTFRAG.
Supported by: Vernier Networks
Reviewed by: Robert Watson <rwatson@FreeBSD.org>
Notes:
svn path=/head/; revision=108466
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o don't strip the Ethernet header from inbound packets; pass packets
up the stack intact (required significant changes to some drivers)
o reference common definitions in net/ethernet.h (e.g. ETHER_ALIGN)
o track ether_ifattach/ether_ifdetach API changes
o track bpf changes (use BPF_TAP and BPF_MTAP)
o track vlan changes (ifnet capabilities, revised processing scheme, etc.)
o use if_input to pass packets "up"
o call ether_ioctl for default handling of ioctls
Reviewed by: many
Approved by: re
Notes:
svn path=/head/; revision=106937
|
| |
|
|
|
|
|
| |
with newbus.
Notes:
svn path=/head/; revision=104116
|
| |
|
|
|
|
|
| |
bpf support these days.
Notes:
svn path=/head/; revision=103040
|
| |
|
|
| |
Notes:
svn path=/head/; revision=92739
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
before adding/removing packets from the queue. Also, the if_obytes and
if_omcasts fields should only be manipulated under protection of the mutex.
IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on
the queue. An IF_LOCK macro is provided, as well as the old (mutex-less)
versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which
needs them, but their use is discouraged.
Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF,
which takes care of locking/enqueue, and also statistics updating/start
if necessary.
Notes:
svn path=/head/; revision=69152
|
| |
|
|
|
|
|
|
|
|
| |
in order to determine whether the ext_buf is a cluster, or some other type
of storage.
Reviewed by: jlemon
Notes:
svn path=/head/; revision=68616
|
| |
|
|
|
|
|
|
|
|
| |
in the previous commit while attempting to sync with netbsd.
Pointed out by: bde
(never thought of compiling i386's LINT with -64-bit-longs...)
Notes:
svn path=/head/; revision=68478
|
| |
|
|
| |
Notes:
svn path=/head/; revision=68433
|
| |
|
|
|
|
|
|
|
|
|
| |
also
- sync with netbsd
- fix a bug that miscalculates tx cell counts when the pointer size isn't 4
tested both ENI and Adaptec cards on both i386 and alpha.
Notes:
svn path=/head/; revision=68432
|
| |
|
|
|
|
|
|
|
|
|
| |
pollution in <sys/mutex.h>. This was half fixed in rev.1.3 of
midwayreg.h. The pollution exposed the bug that this driver was using
toy versions of the bus space macros under FreeBSD. Disabling the
toy versions made this driver compile but dependent on the pollution.
There was still a toy version of bus_space_read_1() in unreachable code.
Notes:
svn path=/head/; revision=68317
|
| |
|
|
|
|
|
|
|
|
|
| |
namespace pollution in <sys/mutex.h>. This was half fixed in rev.1.3
of midwayreg.h. The pollution exposed the bug that this driver was
using toy versions of the bus space macros under FreeBSD. Disabling
the toy versions made this driver compile and maybe support PIO space,
but dependent on the pollution.
Notes:
svn path=/head/; revision=68316
|
| |
|
|
| |
Notes:
svn path=/head/; revision=67882
|
| |
|
|
| |
Notes:
svn path=/head/; revision=67440
|
| |
|
|
| |
Notes:
svn path=/head/; revision=67164
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that should be better.
The old code counted references to mbuf clusters by using the offset
of the cluster from the start of memory allocated for mbufs and
clusters as an index into an array of chars, which did the reference
counting. If the external storage was not a cluster then reference
counting had to be done by the code using that external storage.
NetBSD's system of linked lists of mbufs was cosidered, but Alfred
felt it would have locking issues when the kernel was made more
SMP friendly.
The system implimented uses a pool of unions to track external
storage. The union contains an int for counting the references and
a pointer for forming a free list. The reference counts are
incremented and decremented atomically and so should be SMP friendly.
This system can track reference counts for any sort of external
storage.
Access to the reference counting stuff is now through macros defined
in mbuf.h, so it should be easier to make changes to the system in
the future.
The possibility of storing the reference count in one of the
referencing mbufs was considered, but was rejected 'cos it would
often leave extra mbufs allocated. Storing the reference count in
the cluster was also considered, but because the external storage
may not be a cluster this isn't an option.
The size of the pool of reference counters is available in the
stats provided by "netstat -m".
PR: 19866
Submitted by: Bosko Milekic <bmilekic@dsuper.net>
Reviewed by: alfred (glanced at by others on -net)
Notes:
svn path=/head/; revision=64837
|
| |
|
|
|
|
|
|
|
| |
them.
Pointed out by: bde
Notes:
svn path=/head/; revision=58701
|