Date: Tue, 30 Mar 2010 08:58:21 +0800 (CST) From: jiani1012 <jiani1012@126.com> To: freebsd-net <freebsd-net@freebsd.org> Subject: space of ath_node Message-ID: <cba400.f3c8.127ac9383f3.Coremail.jiani1012@126.com>
next in thread | raw e-mail | index | archive | help
Hi,all A problem puzzled me in ath code. The following code in function ath_node_alloc( ) shows the space allocated to an, >struct ath_ratectrl { >size_t arc_space; /* space required for per-node state */ >}; >const size_t space = sizeof(struct ath_node) + sc->sc_rc->arc_space; >struct ath_node *an; >an = malloc(space, M_80211_NODE, M_NOWAIT|M_ZERO); but in the two lines below ,what is (an)[1]? Where is the initialization of (an)[1]? What does it contain? Can you show me? and how to get the content of sn? >struct sample_node *sn = ATH_NODE_SAMPLE(an); /*in sample.c*/ >#define ATH_NODE_SAMPLE(an) ((struct sample_node *)&(an)[1]) /*in sample.h*/ Otherwise, the struct ath_ratectrl has been used in structures ath_softc, sample_softc and so on. Is there any relations between them? Thank you! Jeny
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?cba400.f3c8.127ac9383f3.Coremail.jiani1012>