Hi there.  I just downloaded and installed ftape-4.0.3-pre2.

I purchased an external Ditto Max drive, so I needed that version.

My computer is a 486 with TurboLinux and kernel 2.2.6.


When I tried to make ftape, it gave me errors concerning the global struct
"current" not having a member named timeout.  I looked through all of the
documentation, including the bug tracking database and saw that nobody had
fixed this yet.  (if this has been resolved, my apologies) So, here goes:

apparently you used to be able to say:
current->timeout = jiffies + foo;
schedule();

to schedule an interrupt (?) in foo jiffies. (set the timeout to happen in
the current number of jiffies plus foo)

But, in newer (newest) kernels, this method doesn't work.  As far as I can
tell, here is what you are supposed to do:

schedule_timeout(foo);


And this will do the same thing.  I'm not entirely sure, because I've
never done any device driver programming before, but that's what seems
reasonable.  So, I was able to make ftape compile after changing this.


The files that gave the errors were:
ftape-buffer.c
ftape-io.c
fdc-io.c

This is the first time I've ever helped to fix any GPL software, so any
tips or help on how I should go about submitting this fix would be
appreciated.

Also, I don't actually know if this works or not since I'm still having
trouble making my drive work, but I think that problem is unrelated and
I'll post that in a separate message.

Thanks,
Ben Brillat

Reply via email to