Hello,

Could you please help me solve this problem.  Compiling FTAPE 4.02 bombs because of an 
erroneous struct definition I think.  I am compiling ftape as a module.  I inserted 
the ftape dir in place of the one included with my kernel, did a make dep, etc. 
compiling a new kernel.  Things bombed when I tried making the ftape module via a make 
modules call.  GCC is version 2.7.2.3-14 on RedHat 6.0 kernel 2.2.5-15.  Follows is 
the output generated by GCC when it fails.


gcc -D__KERNEL__ -I/usr/src/linux-2.2.5/include -Wall -Wstrict-prototypes -O2 
-fomit-frame-pointer -pipe -fno-strength-reduce -m486 -DCPU=486 -DMODULE -DMODVERSIONS 
-include /usr/src/linux-2.2.5/include/linux/modversions.h   -c -o fdc-io.o fdc-io.c
fdc-io.c: In function `fdc_interrupt_wait':
fdc-io.c:433: structure has no member named `timeout'
fdc-io.c:454: structure has no member named `timeout'
make[4]: *** [fdc-io.o] Error 1
make[4]: Leaving directory `/usr/src/linux-2.2.5/drivers/char/ftape/lowlevel'
make[3]: *** [_modsubdir_lowlevel] Error 2
make[3]: Leaving directory `/usr/src/linux-2.2.5/drivers/char/ftape'
make[2]: *** [_modsubdir_ftape] Error 2
make[2]: Leaving directory `/usr/src/linux-2.2.5/drivers/char'
make[1]: *** [_modsubdir_char] Error 2
make[1]: Leaving directory `/usr/src/linux-2.2.5/drivers'
make: *** [_mod_drivers] Error 2

This is the code segment(in  ftape/lowlevel/fdc-io.c) where compiler points to(in 
function fdc_interrupt_wait) :
<snip>
int fdc_interrupt_wait(fdc_info_t *fdc, unsigned int time)
{
        struct wait_queue wait = {current, NULL};
        TRACE_FUN(ft_t_fdc_dma);

        if (fdc->irq_level > 1) {
                TRACE(ft_t_warn,
                      "Geeh! Calling "__FUNCTION__"() with irq's off %d",
                      fdc->irq_level);
        }
        if (fdc->irq_level < 1) {
                TRACE(ft_t_warn,
                      "Geeh! Calling "__FUNCTION__"() with irq's on %d",
                      fdc->irq_level);
        }

#if LINUX_VERSION_CODE >= KERNEL_VER(2,0,16)
        if (waitqueue_active(&fdc->wait_intr)) {
                fdc_enable_irq(fdc);
                TRACE_ABORT(-EIO, ft_t_err, "error: nested call");
        }
#else
        if (fdc->wait_intr) {
                fdc_enable_irq(fdc);
                TRACE_ABORT(-EIO, ft_t_err, "error: nested call");
        }
#endif
        /* timeout time will be up to USPT microseconds too long ! */
        current->timeout = jiffies + (1000 * time + FT_USPT - 1) / FT_USPT;
        current->state = TASK_INTERRUPTIBLE;

<etc>

Therefor I can't compile the module "ftape" because of this error.  

I would appreciated some help in this.

Thank-you

Marc Denis Simard
[EMAIL PROTECTED]

Envoy� par MonCourrier.com

Reply via email to