History log of /dflybsd-src/sys/dev/netif/fxp/if_fxp.c (Results 1 – 25 of 82)
Revision Date Author Comments
# fcf6efef 02-Mar-2019 Sascha Wildner <saw@online.de>

kernel: Remove numerous #include <sys/thread2.h>.

Most of them were added when we converted spl*() calls to
crit_enter()/crit_exit(), almost 14 years ago. We can now
remove a good chunk of them agai

kernel: Remove numerous #include <sys/thread2.h>.

Most of them were added when we converted spl*() calls to
crit_enter()/crit_exit(), almost 14 years ago. We can now
remove a good chunk of them again for where crit_*() are
no longer used.

I had to adjust some files that were relying on thread2.h
or headers that it includes coming in via other headers
that it was removed from.

show more ...


# ac8ea0ad 12-Aug-2015 Sascha Wildner <saw@online.de>

i386 removal, part 34/x: Remove some i386 traces from the kernel.


# b5523eac 19-Feb-2015 Sascha Wildner <saw@online.de>

kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.

The main reason is that our having to use the MB_WAIT and MB_DONTWAIT
flags was a recurring issue when porting drivers from FreeBSD

kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.

The main reason is that our having to use the MB_WAIT and MB_DONTWAIT
flags was a recurring issue when porting drivers from FreeBSD because
it tended to get forgotten and the code would compile anyway with the
wrong constants. And since MB_WAIT and MB_DONTWAIT ended up as ocflags
for an objcache_get() or objcache_reclaimlist call (which use M_WAITOK
and M_NOWAIT), it was just one big converting back and forth with some
sanitization in between.

This commit allows M_* again for the mbuf functions and keeps the
sanitizing as it was before: when M_WAITOK is among the passed flags,
objcache functions will be called with M_WAITOK and when it is absent,
they will be called with M_NOWAIT. All other flags are scrubbed by the
MB_OCFLAG() macro which does the same as the former MBTOM().

Approved-by: dillon

show more ...


# 26595b18 28-Nov-2014 Sascha Wildner <saw@online.de>

kernel: Use the new auto-created sysctl ctx/tree in various drivers.

Everywhere where we formerly rolled a hw.fooX.* per-device ctx/tree
ourselves.

This commit switches it to dev.foo.X.*


# 73029d08 29-Jun-2014 Franco Fichtner <franco@lastsummer.de>

kernel: make pktinfo and cpuid native to ip_input()

In order to remove ether_input_pkt(), switch the prototype
of if_input() and adjust all callers. While there, consolidate
the style of the invoke

kernel: make pktinfo and cpuid native to ip_input()

In order to remove ether_input_pkt(), switch the prototype
of if_input() and adjust all callers. While there, consolidate
the style of the invoke.

Suggested and reviewed by: sephe

show more ...


# ac9843a1 04-Jun-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

ifq: Remove the unused parameter 'mpolled' from ifq dequeue interface

The ifq_poll() -> ifq_dequeue() model is not MPSAFE, and mpolled has
not been used, i.e. set to NULL, for years; time to let it

ifq: Remove the unused parameter 'mpolled' from ifq dequeue interface

The ifq_poll() -> ifq_dequeue() model is not MPSAFE, and mpolled has
not been used, i.e. set to NULL, for years; time to let it go.

show more ...


# 4c77af2d 11-Mar-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

netif: Setup TX ring CPUID before hooking up interrupt vectors


# d3c9c58e 20-Feb-2013 Sascha Wildner <saw@online.de>

kernel: Use DEVMETHOD_END in the drivers.


# d40991ef 13-Feb-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

if: Per-cpu ifnet/ifaddr statistics, step 1/3

Wrap ifnet/ifaddr stats updating, setting and extraction into macros;
ease upcoming changes.


# f0a26983 11-Jan-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

if: Multiple TX queue support step 1 of many; introduce ifaltq subqueue

Put the plain queue information, e.g. queue header and tail, serializer,
packet staging scoreboard and ifnet.if_start schedule

if: Multiple TX queue support step 1 of many; introduce ifaltq subqueue

Put the plain queue information, e.g. queue header and tail, serializer,
packet staging scoreboard and ifnet.if_start schedule netmsg etc. into
its own structure (subqueue). ifaltq structure could have multiple of
subqueues based on the count that drivers can specify.

Subqueue's enqueue, dequeue, purging and states updating are protected
by the subqueue's serializer, so for hardwares supporting multiple TX
queues, contention on queuing operation could be greatly reduced.

The subqueue is passed to if_start to let the driver know which hardware
TX queue to work on. Only the related driver's TX queue serializer will
be held, so for hardwares supporting multiple TX queues, contention on
driver's TX queue serializer could be greatly reduced.

Bunch of ifsq_ prefixed functions are added, which is used to perform
various operations on subqueues. Commonly used ifq_ prefixed functions
are still kept mainly for the drivers which do not support multiple TX
queues (well, these functions also ease the netif/ convertion in this
step :).

All of the pseudo network devices under sys/net are converted to use the
new subqueue operation. netproto/802_11 is converted too. igb(4) is
converted to use the new subqueue operation, the rest of the network
drivers are only changed for the if_start interface modification.

For ALTQs which have packet scheduler enabled, only the first subqueue
is used (*).

(*) Whether we should utilize multiple TX queues if ALTQ's packet scheduler
is enabled is quite questionable. Mainly because hardware's multiple TX
queue packet dequeue mechanism could have negative impact on ALTQ's packet
scheduler's decision.

show more ...


# dfd3b18b 05-Jan-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

if: Move if_cpuid into ifaltq; prepare multiple TX queues support

if_cpuid and if_npoll_cpuid are merged and moved into ifaltq as
altq_cpuid, which indicates the owner CPU of the tx queue. Since
we

if: Move if_cpuid into ifaltq; prepare multiple TX queues support

if_cpuid and if_npoll_cpuid are merged and moved into ifaltq as
altq_cpuid, which indicates the owner CPU of the tx queue. Since
we already have code in if_start_dispatch() to catching tx queue
owner CPU changes, this merging is quite safe.

show more ...


# 9ed293e0 28-Dec-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

if: Move IFF_OACTIVE bit into ifaltq; prepare multiple TX queues support

ifaltq.altq_hw_oactive is now used to record that NIC's TX queue is full.
IFF_OACTIVE is removed from kernel. User space IFF

if: Move IFF_OACTIVE bit into ifaltq; prepare multiple TX queues support

ifaltq.altq_hw_oactive is now used to record that NIC's TX queue is full.
IFF_OACTIVE is removed from kernel. User space IFF_OACTIVE is kept for
compability.

ifaltq.altq_hw_oactive should not be accessed directly. Following set of
functions are provided and should be used:
ifq_is_oactive(ifnet.if_snd) - Whether NIC's TX queue is full or not
ifq_set_oactive(ifnet.if_snd) - NIC's TX queue is full
ifq_clr_oactive(ifnet.if_snd) - NIC's TX queue is no longer full

show more ...


# ee332442 06-Nov-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

fxp: Switch device_polling to ifpoll


# eda7db08 13-Apr-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

ether: Don't manually packing up input mbufs

Since we use spin ports for netisrs now, we no longer need to explicitly
avoid IPI storm on input path.


# 28e81a28 29-Dec-2011 Sepherosa Ziehau <sephe@dragonflybsd.org>

intr: Remove no longer correct ithread_cpuid; use rman_get_cpuid instead


# aa2b9d05 24-Jun-2011 Sascha Wildner <saw@online.de>

kernel: Use NULL for DRIVER_MODULE()'s evh & arg (which are pointers).

This is just cosmetics for easier reading.


# 62b5ec1d 02-Jan-2011 Sascha Wildner <saw@online.de>

kernel: Remove support for the Xerox Network Systems (NS) protocol.

It was previously removed from LINT with commit 67bf99c4 and its removal
was also announced here:

http://leaf.dragonflybsd.org/ma

kernel: Remove support for the Xerox Network Systems (NS) protocol.

It was previously removed from LINT with commit 67bf99c4 and its removal
was also announced here:

http://leaf.dragonflybsd.org/mailarchive/kernel/2010-09/msg00025.html

To be on the safe side, bump _DragonFly_version due to /usr/include/netns
going away. In the unlikely event of something breaking in pkgsrc we'll
have a version to patch against, if needed.

show more ...


# b8a16790 17-Sep-2010 Matthew Dillon <dillon@apollo.backplane.com>

network - Remove crit_exit/crit_enter wrappers in pf.c

* Note I'm talking about exit/enter wrappers, not enter/exit wrappers.
I believe the enter/exit wrappers can be removed too but for now
we

network - Remove crit_exit/crit_enter wrappers in pf.c

* Note I'm talking about exit/enter wrappers, not enter/exit wrappers.
I believe the enter/exit wrappers can be removed too but for now
we have to remove the exit/enter wrappers which assumed a critical
section would be held on entry.

This is no longer the case. Since so much of the network stack is
now threaded callers into PF are not necessarily holding a critical
section to exit out of.

Reported-by: lentferj, Rumko

show more ...


# 5bd08532 17-Sep-2010 Matthew Dillon <dillon@apollo.backplane.com>

network - Zero out m_len / m_pkthdr.len in m_get*() and friends

* Newly allocated mbufs now set m_len and (if a packet header)
m_pkthdr.len to 0 instead of leaving them uninitialized,
allowing u

network - Zero out m_len / m_pkthdr.len in m_get*() and friends

* Newly allocated mbufs now set m_len and (if a packet header)
m_pkthdr.len to 0 instead of leaving them uninitialized,
allowing us to assert that the mbuf does not have an overrun
later when it is freed.

Reported-by: Jan Lentfer <Jan.Lentfer@web.de>

show more ...


# 441d34b2 12-Jun-2010 Sascha Wildner <saw@online.de>

network code: Convert if_multiaddrs from LIST to TAILQ.

It can then be traversed backwards in the three drivers which want
to do that.

Taken-from: FreeBSD


# 2eb0d069 21-Mar-2009 Sepherosa Ziehau <sephe@dragonflybsd.org>

ether_input/rss: Pass packet info to ether_input_chain.

- Pass packet info to ether_input_chain(), if netisr_find_pktinfo_port()
could locate the msgport, then short circuit the rest of the ether_

ether_input/rss: Pass packet info to ether_input_chain.

- Pass packet info to ether_input_chain(), if netisr_find_pktinfo_port()
could locate the msgport, then short circuit the rest of the ether_input
code and dispatch the ethernet packet directly.
- Revoke the pi_hash field in pktinfo and extend the pktinfo_portfn_t to
accpet an mbuf parameter, so that pktinfo_portfn_t could change the mbuf
hash value. e.g. pktinfo_portfn_cpu0() will always set m_pkthdr.hash
to 0.
- Adjust ether_input_chain() callers accordingly.

show more ...


# a75a1559 17-Sep-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Always enable ETHER_INPUT_CHAIN support


# 50098e2e 17-Sep-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Remove the '2' suffix from ether_input_chain and vlan_input; their counterparts
have gone for a long time.


# 95893fe4 17-Aug-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Nuke INTR_NETSAFE


# 7efc589a 03-Aug-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Promote sysctl_int_range()


1234