| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
rather than in ifindex_table[]; all (except one) accesses are
through ifp anyway. IF_LLADDR() works faster, and all (except
one) ifaddr_byindex() users were converted to use ifp->if_addr.
- Stop storing a (pointer to) Ethernet address in "struct arpcom",
and drop the IFP2ENADDR() macro; all users have been converted
to use IF_LLADDR() instead.
Notes:
svn path=/head/; revision=152315
|
|
|
|
|
|
|
|
|
|
| |
If bus_setup_intr() fails, cleanup the ifnet setup in vx_attach() by
calling ether_ifdetach() and if_free().
MFC after: 1 week
Notes:
svn path=/head/; revision=151017
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Rename vxfoo() functions to vx_foo() to improve readability and
consistency with other drivers.
- Prefix most the softc members with 'vx_' (the other members already had
the prefix).
- Switch to using callout_init_mtx() and callout_*() rather than
timeout() and untimeout().
- Add some missing calls to if_free() in some failure cases in vx_attach().
- Use if_printf() and remove the unit number from the softc.
- Remove uses of the 'register' keyword and spls.
- Add locked variants of vx_init() and vx_start().
- Add a mutex to the softc and lock it in various appropriate places.
- Setup the interrupt handler last during attach.
Tested by: imp
MFC after: 1 week
Notes:
svn path=/head/; revision=151014
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
IFF_DRV_RUNNING, as well as the move from ifnet.if_flags to
ifnet.if_drv_flags. Device drivers are now responsible for
synchronizing access to these flags, as they are in if_drv_flags. This
helps prevent races between the network stack and device driver in
maintaining the interface flags field.
Many __FreeBSD__ and __FreeBSD_version checks maintained and continued;
some less so.
Reviewed by: pjd, bz
MFC after: 7 days
Notes:
svn path=/head/; revision=148887
|
|
|
|
|
|
|
|
|
| |
PR: kern/83833
Submitted by: Eygene A. Ryabinkin
MFC after: 3 days
Notes:
svn path=/head/; revision=148284
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
struct ifnet or the layer 2 common structure it was embedded in have
been replaced with a struct ifnet pointer to be filled by a call to the
new function, if_alloc(). The layer 2 common structure is also allocated
via if_alloc() based on the interface type. It is hung off the new
struct ifnet member, if_l2com.
This change removes the size of these structures from the kernel ABI and
will allow us to better manage them as interfaces come and go.
Other changes of note:
- Struct arpcom is no longer referenced in normal interface code.
Instead the Ethernet address is accessed via the IFP2ENADDR() macro.
To enforce this ac_enaddr has been renamed to _ac_enaddr.
- The second argument to ether_ifattach is now always the mac address
from driver private storage rather than sometimes being ac_enaddr.
Reviewed by: sobomax, sam
Notes:
svn path=/head/; revision=147256
|
|
|
|
|
|
|
|
|
| |
and amd64. The optimization is a trivial on recent machines.
Reviewed by: -arch (imp, marcel, dfr)
Notes:
svn path=/head/; revision=146734
|
|
|
|
|
|
|
|
| |
BUS_PROBE_LOW_PRIORITY in stead of ifdef for devices that xl and vx
both support so that xl will snarf them on up.
Notes:
svn path=/head/; revision=142880
|
|
|
|
|
|
|
|
|
| |
default on PowerPC.
Approved by: mdodd
Notes:
svn path=/head/; revision=141166
|
|
|
|
| |
Notes:
svn path=/head/; revision=139749
|
|
|
|
|
|
|
|
| |
if_media and DMA support to the driver. The previous style was inconsistent
making it difficult to emulate existing style.
Notes:
svn path=/head/; revision=133980
|
|
|
|
|
|
|
| |
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
Notes:
svn path=/head/; revision=133702
|
|
|
|
|
|
|
| |
This avoids a panic upon first softc field reference.
Notes:
svn path=/head/; revision=133518
|
|
|
|
| |
Notes:
svn path=/head/; revision=129879
|
|
|
|
|
|
|
| |
for us.
Notes:
svn path=/head/; revision=129616
|
|
|
|
|
|
|
|
| |
Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde
Notes:
svn path=/head/; revision=127135
|
|
|
|
| |
Notes:
svn path=/head/; revision=126966
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
more advanced version of the chips supported by the former. Matt Dodd
and I are working towards merging them, and this a step on that path.
Notes:
svn path=/head/; revision=121491
|
|
|
|
| |
Notes:
svn path=/head/; revision=121391
|
|
|
|
| |
Notes:
svn path=/head/; revision=121390
|
|
|
|
|
|
|
|
| |
Glanced over by: imp, gibbs
Tested by: i386 LINT
Notes:
svn path=/head/; revision=119690
|
|
|
|
|
|
|
| |
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=119287
|
|
|
|
|
|
|
|
|
| |
waiting in the interface queue.
Submitted by: Yeasah Pell <yeasah@apocalypse.org>
Notes:
svn path=/head/; revision=116062
|
|
|
|
|
|
|
| |
Found by: FlexeLint
Notes:
svn path=/head/; revision=115548
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
of asserting that an mbuf has a packet header. Use it instead of hand-
rolled versions wherever applicable.
Submitted by: Hiten Pandya <hiten@unixdaemons.com>
Notes:
svn path=/head/; revision=113255
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
Spotted by: FlexeLint
Notes:
svn path=/head/; revision=104363
|
|
|
|
| |
Notes:
svn path=/head/; revision=104259
|
|
|
|
|
|
|
|
|
|
| |
breaking application ABI use unused ifreq.ifru_flags[1] for upper 16 bits in
SIOCSIFFLAGS and SIOCGIFFLAGS ioctl's.
Reviewed by: -hackers, -net
Notes:
svn path=/head/; revision=102052
|
|
|
|
| |
Notes:
svn path=/head/; revision=92739
|
|
|
|
|
|
|
|
| |
Reviewed by: dg, bmilekic
MFC after: 3 days
Notes:
svn path=/head/; revision=90227
|
|
|
|
|
|
|
| |
MFC after: 1 week
Notes:
svn path=/head/; revision=79885
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
something: offset into the first mbuf of the target chain before copying
the source data over.
Make drivers using m_devget() with a first argument "data - ETHER_ALIGN"
to use the offset argument to pass ETHER_ALIGN in. The way it was previously
done is potentially dangerous if the source data was at the top of a page
and the offset caused the previous page to be copied (if the
previous page has not yet been appropriately mapped).
The old `offset' argument in m_devget() is not used anywhere (it's always
0) and dates back to ~1995 (and earlier?) when support for ethernet trailers
existed. With that support gone, it was merely collecting dust.
Tested on alpha by: jlemon
Partially submitted by: jlemon
Reviewed by: jlemon
MFC after: 3 weeks
Notes:
svn path=/head/; revision=78508
|
|
|
|
|
|
|
|
|
|
| |
We must force payload alignment to a longword boundary to make the
alpha happy. This should stop the driver from trapping on the alpha
when the interface is ifconfig'ed (actually, when the first frame is
received).
Notes:
svn path=/head/; revision=69732
|
|
|
|
|
|
|
|
|
| |
interface. In addition to using newbus, it also uses bus_space rather
than inb/outb to make it MI. The grody static softc allocation stuff
has been removed as well.
Notes:
svn path=/head/; revision=68417
|
|
|
|
| |
Notes:
svn path=/head/; revision=67164
|
|
|
|
|
|
|
|
|
|
|
|
| |
ether_ifdetach().
The former consolidates the operations of if_attach(), ng_ether_attach(),
and bpfattach(). The latter consolidates the corresponding detach operations.
Reviewed by: julian, freebsd-net
Notes:
svn path=/head/; revision=63090
|
|
|
|
|
|
|
|
| |
in m_pkthdr portion.
actually, we should not change pkthdr mbuf <-> non-pkthdr mbuf.
Notes:
svn path=/head/; revision=62593
|
|
|
|
| |
Notes:
svn path=/head/; revision=61038
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the individual drivers and into the common routine ether_input().
Also, remove the (incomplete) hack for matching ethernet headers
in the ip_fw code.
The good news: net result of 1016 lines removed, and this should make
bridging now work with *all* Ethernet drivers.
The bad news: it's nearly impossible to test every driver, especially
for bridging, and I was unable to get much testing help on the mailing
lists.
Reviewed by: freebsd-net
Notes:
svn path=/head/; revision=60536
|
|
|
|
|
|
|
|
|
|
|
| |
of using the MGETHDR macro all the time. When an mbuf is reused as a
header, initialize csum_flags to zero as well, so the delayed_checksum
call woks properly.
Debbugging work done by: jmas
Notes:
svn path=/head/; revision=60475
|
|
|
|
| |
Notes:
svn path=/head/; revision=59868
|
|
|
|
|
|
|
| |
needed.
Notes:
svn path=/head/; revision=56833
|
|
|
|
| |
Notes:
svn path=/head/; revision=56077
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Collect together the components of several drivers and export eisa from
the i386-only area (It's not, it's on some alphas too). The code hasn't
been updated to work on the Alpha yet, but that can come later.
Repository copies were done a while ago.
Moving these now keeps them in consistant place across the 4.x series
as the newbusification progresses.
Submitted by: mdodd
Notes:
svn path=/head/; revision=55953
|