Menu

compilation problems under 2.6.22

Help
2007-08-05
2013-04-18
  • Thomas Hahn

    Thomas Hahn - 2007-08-05

    Hello I tried to compile this under debian and got a compilation error

    tom@dezemba:/usr/src/et131x-1.2.3$ make
    #@make -C /lib/modules/2.6.22-1-amd64/build M=/usr/src/et131x-1.2.3 modules
    make[1]: Entering directory `/usr/src/linux-headers-2.6.22-1-amd64'
      CC [M]  /usr/src/et131x-1.2.3/et131x_netdev.o
    In file included from /usr/src/et131x-1.2.3/et131x_adapter.h:85,
                     from /usr/src/et131x-1.2.3/et131x_netdev.c:123:
    /usr/src/et131x-1.2.3/ET1310_rx.h:441: warning: ‘kmem_cache_t’ is deprecated
    /usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_open’:
    /usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: ‘deprecated_irq_flag’ is deprecated (declared at include/linux/interrupt.h:66)
    /usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
    /usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_set_mac_addr’:
    /usr/src/et131x-1.2.3/et131x_netdev.c:1336: warning: ISO C90 forbids mixed declarations and code
    /usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_vlan_rx_kill_vid’:
    /usr/src/et131x-1.2.3/et131x_netdev.c:1605: error: ‘struct vlan_group’ has no member named ‘vlan_devices’
    make[2]: *** [/usr/src/et131x-1.2.3/et131x_netdev.o] Error 1
    make[1]: *** [_module_/usr/src/et131x-1.2.3] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-1-amd64'
    make: *** [modules] Error 2

    I "solved" this by commenting out the troublesome line of code:

    void et131x_vlan_rx_kill_vid( struct net_device *netdev, UINT16 vid )
    {
        ET131X_ADAPTER     *pAdapter = netdev_priv( netdev );
        /*-----------------------------------------------------------------------*/

        DBG_FUNC( "et131x_vlan_rx_kill_vid" );
        DBG_ENTER( et131x_dbginfo );

        DBG_VERBOSE( et131x_dbginfo, "VLAN, Remove VID: %d\n", vid );

        if( pAdapter->vlgrp )
        {
            #if 0
            pAdapter->vlgrp->vlan_devices[vid] = NULL;
            #endif
        }

        /**************************************************************************
           This is where any interfacing with the hardware to deregister VLAN IDs
           would take place. Since the ET1310 doesn't handle this in hardware,
           nothing else needs to be done here.
         *************************************************************************/

        DBG_LEAVE( et131x_dbginfo );
        return;
    }

    This got me through the compilation and the module installed fine.

    Is there a better way to do this?

    Thanks Thomas

     
    • Nils Winkler

      Nils Winkler - 2007-08-05

      This patch should do it:
      https://sourceforge.net/tracker/index.php?func=detail&aid=1709009&group_id=179406&atid=889025

      In short, the name of the array changed. You shouldn't have to remove the call, there's a replacement call you can use instead. Works fine for me on Fedora 7 with the same kernel as yours.

      Nils

       

Log in to post a comment.