History log of /freebsd/sys/dev/xen/netfront/netfront.c (Results 176 – 200 of 246)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 9307d8bd 08-May-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Merge svn+ssh://svn.freebsd.org/base/head@207793


# 945f418a 06-May-2010 Kirk McKusick <mckusick@FreeBSD.org>

Final update to current version of head in preparation for reintegration.


# 8e0ad55a 05-May-2010 Joel Dahl <joel@FreeBSD.org>

Switch to our preferred 2-clause BSD license.

Approved by: kmacy


Revision tags: release/7.3.0_cvs, release/7.3.0
# 1a0fda2b 04-Mar-2010 Dag-Erling Smørgrav <des@FreeBSD.org>

IFH@204581


# 227ca257 21-Feb-2010 Kip Macy <kmacy@FreeBSD.org>

- make printf conditional
- fix witness warnings by making configuration lock a mutex


# 9199c09a 06-Jan-2010 Warner Losh <imp@FreeBSD.org>

Merge from head at r201628.

# This hasn't been tested, and there are at least three bad commits
# that need to be backed out before the branch will be stable again.


# 0e509842 01-Dec-2009 Justin T. Gibbs <gibbs@FreeBSD.org>

Add media ioctl support and link notifications so that devd will attempt
to run dhclient on a netfront (xn) device that is setup for DHCP in
/etc/rc.conf.

PR: kern/136251 (fixed differently than th

Add media ioctl support and link notifications so that devd will attempt
to run dhclient on a netfront (xn) device that is setup for DHCP in
/etc/rc.conf.

PR: kern/136251 (fixed differently than the submitted patch)

show more ...


Revision tags: release/8.0.0_cvs, release/8.0.0
# dbd69bc5 19-Nov-2009 John Baldwin <jhb@FreeBSD.org>

Remove commented out reference to if_watchdog and an assignment of zero to
if_timer.

Reviewed by: scottl


# 10b3b545 17-Sep-2009 Dag-Erling Smørgrav <des@FreeBSD.org>

Merge from head


# 7d4b968b 17-Sep-2009 Dag-Erling Smørgrav <des@FreeBSD.org>

Merge from head up to r188941 (last revision before the USB stack switch)


# 09c817ba 03-Jul-2009 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

- MFC


# cfed3783 13-Jun-2009 Kip Macy <kmacy@FreeBSD.org>

update backend_changed to reflect .m prototype


# 7e857dd1 12-Jun-2009 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

- Merge from HEAD


# 8cb07992 07-Jun-2009 Adrian Chadd <adrian@FreeBSD.org>

Fix compilation when compiled w/out WITNESS.

Submitted by: Edwin Shao <poleris@gmail.com>


# 3552092b 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Delete useless #ifdef; make it more obvious if setting TSO fails.


# d76e4550 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Clear IFF_DRV_OACTIVE if at least one TX xen/mbuf ring slot has been freed.


# 7c66482c 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Enforce that there are actually enough xenbus TX ring descriptors available
before attempting to queue the packet.


# 3fb28bbb 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Comment tidyup; comment where the next explicit check should
appear.


# a4ec37f5 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Ensure that there are enough TX mbuf ring slots available before beginning
to dequeue a packet.

The tx path was trying to ensure that enough Xenbus TX ring slots existed but
it didn't check to see w

Ensure that there are enough TX mbuf ring slots available before beginning
to dequeue a packet.

The tx path was trying to ensure that enough Xenbus TX ring slots existed but
it didn't check to see whether the mbuf TX ring slots were also available.
They get freed in xn_txeof() which occurs after transmission, rather than earlier
on in the process. (The same happens under Linux too.)

Due to whatever reason (CPU use, scheduling, memory constraints, whatever) the
mbuf TX ring may not have enough slots free and would allocate slot 0. This is
used as the freelist head pointer to represent "free" mbuf TX ring slots; setting
this to an actual mbuf value rather than an id crashes the code.

This commit introduces some basic code to track the TX mbuf ring use and then
(hopefully!) ensures that enough slots are free in said TX mbuf ring before it
enters the actual work loop.

A few notes:

* Similar logic needs to be introduced to check there are enough actual slots
available in the xenbuf TX ring. There's some logic which is invoked earlier
but it doesn't hard-check against the number of available ring slots.
Its trivial to do; I'll do it in a subsequent commit.

* As I've now commented in the source, it is likely possible to deadlock the
driver under certain conditions where the rings aren't receiving any changes
(which I should enumerate) and thus Xen doesn't send any further software
interrupts. I need to make sure that the timer(s) are running right and
the queues are periodically kicked.

PR: 134926

show more ...


# 2d8fae98 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Do the invariant check before the mbuf is dereferenced.


# c099cafa 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Flesh out some inline documentation which hopefully reflect the intended
reality of these functions.


# 0e6993e4 27-May-2009 Adrian Chadd <adrian@FreeBSD.org>

Add in some INVARIANT checks in the TX mbuf descriptor "freelist" management code.

Slot 0 must always remain "free" and be a pointer to the first free entry in the
mbuf descriptor list. It is thus a

Add in some INVARIANT checks in the TX mbuf descriptor "freelist" management code.

Slot 0 must always remain "free" and be a pointer to the first free entry in the
mbuf descriptor list. It is thus an error to have code allocate or push slot 0
back into the list.

show more ...


# 2e370a5c 26-May-2009 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Merge from HEAD


# 3a539122 18-May-2009 Adrian Chadd <adrian@FreeBSD.org>

The merge in r189699 reverted part of the work done in a previous commit
(r188036.)

Re-revert that change so the Xen networking functions again.


Revision tags: release/7.2.0_cvs, release/7.2.0
# 1829d5da 12-Mar-2009 Warner Losh <imp@FreeBSD.org>

Update the projects tree to a newer FreeBSD current.


12345678910