[Click] Still unable to find the handler on NIC packet losses

Brecht Vermeulen brecht.vermeulen at UGent.be
Mon Mar 29 17:33:26 EST 2004


Hi,

are you using the e1000 drivers ?
Then you have additional information in /proc/PRO_LAN_Adapters

Maybe you can give more information on where you heard/read/saw about 
those handlers, and which cards you are using ?

regards,
Brecht

Alessandro Coli wrote:

> 
> Hi. In order to enable the handlers that help you monitoring the packet losses 
> in the NIC and the DMA requests and replies, i partially modified some lines of 
> the file "elements/linuxmodule/anydevice.hh", as Eddie Kohler told me to do.
> 
> The default starting of the file was:
> 
> --------------------------------------------------------------------------------
> ----
> 
> // -*- mode: c++; c-basic-offset: 4 -*-
> #ifndef ANYDEVICE_HH
> #define ANYDEVICE_HH
> #include <click/element.hh>
> #include <click/task.hh>
> 
> #include <click/cxxprotect.h>
> CLICK_CXX_PROTECT
> #include <linux/netdevice.h>
> CLICK_CXX_UNPROTECT
> #include <click/cxxunprotect.h>
> 
> // #define CLICK_DEVICE_CYCLES 1
> // #define CLICK_DEVICE_PRFCTR 1
> // #define CLICK_DEVICE_THESIS_STATS 1
> // #define _DEV_OVRN_STATS_ 1
> #define CLICK_CYCLE_COMPENSATION 0
> 
> #ifdef HAVE_STRIDE_SCHED
> # define CLICK_DEVICE_ADJUST_TICKETS 1
> #endif
> 
> #if CLICK_DEVICE_PRFCTR && __i386__
> 
> #define CLICK_DEVICE_STATS 1
> #define SET_STATS(p0mark, p1mark, time_mark) \
> 
> -----------------------------------------------------------------------------
> 
> 
> 
> 
>  I changed it this way: 
> 
> 1) I enabled #define CLICK_DEVICE_THESIS_STATS 1 deleting the \\ at the 15th 
> line (considering even the blank lines) ;
> 
> 2) I added a #define CLICK_DEVICE_STATS 1 at the 18th line (after the #define 
> CLICK_CYCLE_COMPENSATION 0, line which already was present).
> 
> And so now this is the copy of the file on my pc:
> 
> --------------------------------------------------------------------------------
> ----------
> 
> // -*- mode: c++; c-basic-offset: 4 -*-
> #ifndef ANYDEVICE_HH
> #define ANYDEVICE_HH
> #include <click/element.hh>
> #include <click/task.hh>
> 
> #include <click/cxxprotect.h>
> CLICK_CXX_PROTECT
> #include <linux/netdevice.h>
> CLICK_CXX_UNPROTECT
> #include <click/cxxunprotect.h>
> 
> // #define CLICK_DEVICE_CYCLES 1
> // #define CLICK_DEVICE_PRFCTR 1
> #define CLICK_DEVICE_THESIS_STATS 1
> // #define _DEV_OVRN_STATS_ 1
> #define CLICK_CYCLE_COMPENSATION 0
> #define CLICK_DEVICE_STATS 1
> 
> #ifdef HAVE_STRIDE_SCHED
> # define CLICK_DEVICE_ADJUST_TICKETS 1
> #endif
> 
> #if CLICK_DEVICE_PRFCTR && __i386__
> 
> #define CLICK_DEVICE_STATS 1
> #define SET_STATS(p0mark, p1mark, time_mark) \
> 
> --------------------------------------------------------------------------------
> 
> Unfortunately, after this I still could not find in PollDevice and ToDevice the 
> handler which tells you how many packets have been dropped by the NIC. 
> 
> Didn't I already enable it, changing the file that way? If yes, in which 
> element should i look for that handler? If not, how can i enable it?
> 
> What do the other constants (still disabled in my copy of the file) do? What's 
> their use?
> 
> Hope in a kind answer :)
> 
> Many thanks
> 
> Alex
> 
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list