From f5e52d8bdd0a2fb914c5a8081d1e32d0e0cd0ca2 Mon Sep 17 00:00:00 2001 From: harti Date: Sat, 21 Feb 2004 12:59:14 +0000 Subject: The token for atm_intr is actually a void *, not an int. Clarify what atm_intr expects in a comment and de-obfuscate the code a little bit by replacing the portability macros with the native BSD names. --- sys/dev/hfa/fore_receive.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'sys/dev/hfa') diff --git a/sys/dev/hfa/fore_receive.c b/sys/dev/hfa/fore_receive.c index f642111..881cc87 100644 --- a/sys/dev/hfa/fore_receive.c +++ b/sys/dev/hfa/fore_receive.c @@ -467,9 +467,11 @@ retry: * Prepend callback function pointer and token value to buffer. * We have already guaranteed that the space is available * in the first buffer. + * Don't count this extra fields in m_pkthdr.len (XXX) */ - KB_HEADADJ(mhead, sizeof(atm_intr_func_t) + sizeof(int)); - KB_DATASTART(mhead, cp, caddr_t); + mhead->m_data -= sizeof(atm_intr_func_t) + sizeof(void *); + mhead->m_len += sizeof(atm_intr_func_t) + sizeof(void *); + cp = mtod(mhead, caddr_t); *((atm_intr_func_t *)cp) = fore_recv_stack; cp += sizeof(atm_intr_func_t); *((void **)cp) = (void *)fvp; -- cgit v1.1