Re: if_start running deferred for Giant



Robert Watson wrote:

On Sun, 30 Dec 2007, Tofig Suleymanov wrote:

I am writing a driver for Kyocera USB modem for FreeBSD and there are a few questions that I am not able to solve alone. I would be grateful if someone could point me into the right direction.Here is the first one:

Inside the USB_ATTACH() function I initialise the ifnet(9) structure and return USB_ATTACH_SUCCESS_RETURN. Everything seems to be fine so far (I can see the interface in ifconfig output) except the following error notice spit to the console:

xxxxxx kernel: ib0: if_start running deferred for Giant

I am not sure what does this exactly mean.

Any help would be appreciated.

This occurs when a network device driver has declared itself IFF_NEEDSGIANT -- that is, has declared that it requires the Giant lock in order to operate. As this is considered an undesirable state of affairs for a device driver, a warning is printed. However, in the case of a USB device driver, it is currently required as the USB framework is not MPSAFE, so requires Giant.

Robert N M Watson
Computer Laboratory
University of Cambridge
_______________________________________________
freebsd-net@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscribe@xxxxxxxxxxx"
Thanks for clarification. Does it mean that I can ignore this notice when dealing with USB framework ?



_______________________________________________
freebsd-net@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • Re: NET_NEEDS_GIANT removal
    ... On Fri, 1 Jun 2007, Robert Watson wrote: ... This allows them to run moderately safely, but eliminates use of more than one processor at a time in any part of the network stack, as well as increasing contention on Giant for any other non-MPSAFE components, requiring Giant be acquired in possible shared ithreads, etc. ... It does not yet compile, as parts requiring NET_NEEDS_GIANThaven't been removed/disabled yet, but does begin to give a sense of how removing these shims cleans up many complex code paths. ...
    (freebsd-current)
  • Re: I/O or Threading Suffer
    ... Robert Watson writes: ... There are some Giant issues related to the UIO stuff ... Mark Murray ...
    (freebsd-current)
  • Re: Protocol timer running before protocol init (Re: current panic igmp related ?)
    ... On Tuesday 07 December 2004 13:50, Robert Watson wrote: ... > igmp_mtx looks to be uninitialized here (BSS memory). ... > somewhat odd. ... Giant long enough while we set things up. ...
    (freebsd-current)
  • Re: HEADS UP: Giant-free networking now the default in CVS HEAD (6.x)
    ... Robert Watson wrote: ... a number of kernel elements will now run without ... > Giant by default, and often in parallel or preemptively. ... To unsubscribe, ...
    (freebsd-current)