lkml.org 
[lkml]   [1998]   [Jun]   [16]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 16 Jun 1998 12:14:54 +0300 (EEST)
FromSerguei Koubouchine <>
Subjectsoundmodem and hweihgt*() functions
Hi, everybody!

First of all (2.1.106 with ac2):

=== Cut ===
/lib/modules/2.1.106/net/soundmodem.o: unresolved symbol(s)
        generic_hweight8
        generic_hweight16
        generic_hweight32
=== Cut ===

Looking into linux/bitops.h:

=== Cut ===
extern __inline__ unsigned int generic_hweight32(unsigned int w)
{
        unsigned int res = (w & 0x55555555) + ((w >> 1) & 0x55555555);
        res = (res & 0x33333333) + ((res >> 2) & 0x33333333);
        res = (res & 0x0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F);
        res = (res & 0x00FF00FF) + ((res >> 8) & 0x00FF00FF);
        return (res & 0x0000FFFF) + ((res >> 16) & 0x0000FFFF);
}
=== Cut ===
Almost the same declarations are #if 0'd in sm.h (inline without
underscores).

Can anybody explain the "extern __inline__" meaning? And how can decent
module resolve such symbols which declared extern and not exported anywhere
in the kernel tree 'coz the corresponding functions did not get built at
all?

=======================================================================
Serguei Koubouchine aka the Tamer < > The impossible we do immediately.
e-mail: ksi@gu.net   SK320-RIPE   < > Miracles require 24-hour notice.
=======================================================================

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu

\
 
 \ /
  Last update: 2005-03-22 12:43    [from the cache]
©2003-2008