From: Heiko Gerstung <heiko.gerstung@meinberg.de>
To: Robert Hancock <hancockr@shaw.ca>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
Jesper Juhl <jesper.juhl@gmail.com>
Subject: Re: Backport of a 2.6.x USB driver to 2.4.32 - help needed
Date: Wed, 07 Jun 2006 08:56:40 +0200 [thread overview]
Message-ID: <448678A8.2050501@meinberg.de> (raw)
In-Reply-To: <44861AEE.3020109@shaw.ca>
Robert Hancock wrote:
> Jesper Juhl wrote:
>> On 06/06/06, Heiko Gerstung <heiko.gerstung@meinberg.de> wrote:
>>> Hi!
>>>
>>> Short Version (tm): I try to backport a USB driver (rtl8150.c) from
>>> 2.6.15.x to 2.4.32 and have no idea how to substitue two functions:
>>> in_atomic() and schedule_timeout_uninterruptible() ... I really would
>>> appreciate any help, because I am no kernel hacker at all ...
>>>
>> in_atomic() is used to test if the kernel is in a state where sleeping
>> is allowed or not. The 2.4.x kernel is not preemptive and has quite
>> coarse grained SMP support (the BKL "Big Kernel Lock"), it didin't
>> need in_atomic() in the same way as 2.6.x does.
>
> There's little difference in the need for it, 2.4 just doesn't have it.
> I don't see a call to that function in that driver's code though?
It is in the modified version. In the long version of my post I wrote
that the maintainer of the driver was so kind to modify the 2.6 driver
code for me, because using such an interface in a bonding configuration
always leads to kernel crashes in 2.4 kernels (I tested 2.4.20 and
2.4.32). Backporting the unmodified 2.6 driver did not change that and
it seems that the crashes are caused by the way the bonding code is
accessing the interface (in combination with the buggy driver, of course).
>> schedule_timeout_uninterruptible() is used to sleep on a wait-queue,
>> which 2.4.x does not have.
>
> Huh? 2.4 did have wait queues, but that call has nothing to do with
> them. You should be able to replace it with:
>
> set_current_state( TASK_UNINTERRUPTIBLE );
> schedule_timeout( timeout );
Thanks for the tip!
I will take a look into the differences between the 2.4 and 2.6 bonding
code and will come back here with questions (that one is for sure!).
Kind regards,
Heiko
--
------------------------------------------------------------------------
*MEINBERG Funkuhren GmbH & Co. KG*
Auf der Landwehr 22
D-31812 Bad Pyrmont, Germany
Tel.: ++49 (0)5281 9309-25
Fax: ++49 (0)5281 9309-30
eMail: heiko.gerstung@meinberg.de <mailto:heiko.gerstung@meinberg.de>
Internet: www.meinberg.de <http://www.meinberg.de/>
------------------------------------------------------------------------
Meinberg radio clocks: 25 years of accurate time worldwide
next prev parent reply other threads:[~2006-06-07 6:56 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <6kGwd-1tt-23@gated-at.bofh.it>
[not found] ` <6kHVe-3Hs-45@gated-at.bofh.it>
2006-06-07 0:16 ` Backport of a 2.6.x USB driver to 2.4.32 - help needed Robert Hancock
2006-06-07 6:56 ` Heiko Gerstung [this message]
[not found] <mailman.1149588721.11795.linux-kernel2news@redhat.com>
2006-06-09 23:26 ` Pete Zaitcev
2006-06-14 13:56 ` Heiko Gerstung
2006-06-06 9:48 Heiko Gerstung
2006-06-06 11:23 ` Jesper Juhl
2006-06-06 11:41 ` Heiko Gerstung
2006-06-06 14:43 ` Lennart Sorensen
2006-06-06 14:48 ` Heiko Gerstung
2006-06-06 14:58 ` Lennart Sorensen
2006-06-06 18:30 ` Nish Aravamudan
2006-06-07 8:04 ` Jesper Juhl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=448678A8.2050501@meinberg.de \
--to=heiko.gerstung@meinberg.de \
--cc=hancockr@shaw.ca \
--cc=jesper.juhl@gmail.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox