All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: "Jeffery, David" <David_Jeffery@adaptec.com>
Cc: linux-scsi@vger.kernel.org
Subject: Re: [PATCH2.5] ips 3/4: use pci_dma APIs and remove GFP abuse
Date: Mon, 18 Aug 2003 19:52:11 -0400	[thread overview]
Message-ID: <3F4166AB.9080609@pobox.com> (raw)
In-Reply-To: <A3B9245C291EEF4785A24A1DBE8D852B037809@rtpexc01.adaptec.com>

Jeffery, David wrote:
>>-----Original Message-----
>>From: Jeff Garzik
>>Sent: Friday, August 15, 2003 5:10 PM
>>To: Jeffery, David
>>Cc: linux-scsi
>>Subject: Re: [PATCH2.5] ips 3/4: use pci_dma APIs and remove GFP abuse
>>
>>
>>David Jeffery wrote:
>>
>>>-#if !defined(__i386__) && !defined(__ia64__)
>>>-#error "This driver has only been tested on the x86/ia64 platforms"
>>>+#if !defined(__i386__) && !defined(__ia64__) && 
>>
>>!defined(__x86_64__)
>>
>>>+#error "This driver has only been tested on the 
>>
>>x86/ia64/x86_64 platforms"
>>
>>> #endif
>>
>>This should be removed completely.
>>
>>Under Linux, you limit the architectures that build your driver via 
>>Kconfig (or in 2.4, Config.in) dependencies.
>>
>>Further, Linux actively encourages that all PCI platforms at least 
>>attempt to build PCI drivers -- even if the company does not 
>>support the 
>>driver on that platform.  This leads to an increase in driver 
>>quality, 
>>as it increases the opportunities others have to point out bugs, and 
>>offer fixes.
> 
> 
> I need to fix up the Kconfig file.  How about I also downgrade that to
> a #warning like Andi suggested earlier?

Yeah, that's definitely an improvement, thanks.


>>> #if LINUX_VERSION_CODE <= KERNEL_VERSION(2,

>>It's not wrong... but it's a bit nasty to be calling 
>>pci_alloc_consistent from the interrupt handler.  Typically, 
>>if you can, 
>>it would be better to have buffers waiting for you, and you 
>>simply map 
>>them here, using pci_map_single or pci_map_page or whatever.
> 
> 
> Normally, that is what happens.  A new, larger buffer will
> only be allocated in a few very rare cases.  No user should
> ever hit those allocations when using the ServeRAID tools.
> Only a few special commands like flashing firmware should
> ever trigger reallocation.
> 
> 
>>Also, as a tangent, I was thinking that it might be 
>>beneficial to move 
>>ips_next() to a tasklet.  Change all callers to call 
>>schedule_tasklet() 
>>instead.  That should allow more streamlined usage, IMO...
> 
> 
> Reworking ips_next is on my large list of Things To Do if I
> Had Time.

hehe :)

> The code still has plenty of warts and I wish I had more time to work
> on them. (Notice a theme about time? :)

Not an unique situation, either :)  Thanks,

	Jeff





  reply	other threads:[~2003-08-18 23:52 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-18 16:09 [PATCH2.5] ips 3/4: use pci_dma APIs and remove GFP abuse Jeffery, David
2003-08-18 23:52 ` Jeff Garzik [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-08-15 12:43 David Jeffery
2003-08-15 21:09 ` Jeff Garzik

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=3F4166AB.9080609@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=David_Jeffery@adaptec.com \
    --cc=linux-scsi@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.