From: Jeff Garzik <jgarzik@pobox.com>
To: Luben Tuikov <luben_tuikov@adaptec.com>
Cc: Andi Kleen <ak@muc.de>, linux-scsi@vger.kernel.org
Subject: Re: [ANNOUNCE] Adaptec SAS/SATA device driver [17/27]
Date: Thu, 17 Feb 2005 17:03:18 -0500 [thread overview]
Message-ID: <421514A6.3030908@pobox.com> (raw)
In-Reply-To: <421509BC.3090708@adaptec.com>
Luben Tuikov wrote:
> Yes, that's true. The driver was written to compile for 2.4 as well
> as for 2.6.
Typically what you want to do is target 2.6, and isolate/emulate missing
functionality in 2.4.x in a compatibility file. This compatibility
file/lib would not exist in 2.6 kernel, but you can give it to vendors
or distros to ship. An example of this, called "kcompat", can be found
at http://sourceforge.net/projects/gkernel/
Another approach, which I took with libata, is to design the code such
that there are minimal differences between 2.4 and 2.6. Granted,
though, with the upcoming NCQ and transport class changes, those
differences increase.
Either way, cross-OS and cross-kernel-version compatibility stuff needs
to be carefully examined, and as much excised as possible. After many
years, we have found that such portions of code often hide bugs.
We _do_ recognize that it's a bit painful for hardware vendors trying to
support various Linux versions, but if you plan for it up front, the
pain can be minimized. I support libata on both 2.4 and 2.6
concurrently, for example.
Remember, we have all these "weird" requirements because all source code
merged into the Linux kernel lives on for many years after the
hardware's end-of-life. We need to ensure that source code is
maintain-able even if the hardware vendor abandons a Linux driver.
Jeff
prev parent reply other threads:[~2005-02-17 22:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-17 17:37 [ANNOUNCE] Adaptec SAS/SATA device driver [17/27] Luben Tuikov
2005-02-17 21:08 ` Andi Kleen
2005-02-17 21:16 ` Luben Tuikov
2005-02-17 22:03 ` Jeff Garzik [this message]
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=421514A6.3030908@pobox.com \
--to=jgarzik@pobox.com \
--cc=ak@muc.de \
--cc=linux-scsi@vger.kernel.org \
--cc=luben_tuikov@adaptec.com \
/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