public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Andrew Morton <akpm@osdl.org>, Linus Torvalds <linus@osdl.org>,
	anton@samba.org, paulus@samba.org, axboe@suse.de,
	piggin@cyberone.com.au, viro@parcelfarce.linux.theplanet.co.uk,
	hch@lst.de, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] iSeries virtual disk
Date: Thu, 26 Feb 2004 02:29:26 -0500	[thread overview]
Message-ID: <403DA056.8030007@pobox.com> (raw)
In-Reply-To: <20040226172325.3a139f73.sfr@canb.auug.org.au>


Mozilla is being annoying and not quoting your patch, so bear with me. 
comments:

1) return an error instead of BUG() (and no error return) in the generic 
DMA routines that can return a meaningful value

2) num_req_outstanding accessed without lock in do_viodasd_request 
(driver's request_fn).  all other accesses are inside spinlock.

3) is viodasd_revalidate really needed?

4) why do you call blkdev_dequeue_request() in do_viodasd_request() 
rather than viodasd_end_request() ?  Or just use end_request() ?

5) is it really OK to call viodasd_open() and viodasd_release() multiple 
times?  These functions do not look guarded against multiple openers.

6) access to a struct viodasd_device in viodasd_ioctl() is completely 
unprotected.  OK, or asking for trouble?

7) use sg_dma_address() and sg_dma_len() accessors instead of directly 
referencing the struct scatterlist elements.  (several places)

8) send_request() probably wants a common error-exit+cleanup path, 
instead of duplicating the same cleanup code multiple times

9) viodasd_restart_all_queues_starting_from -- are you sure you don't 
want to make the function name even longer?  Maybe try for a new record?

10) in viodasd_handleReadWrite() you obtain the queue lock via 
spin_lock(), but the rest of the kernel uses spin_lock_irq() or 
spin_lock_irqsave()

11) viodasd_handleReadWrite, vioHandleBlockEvent -- follow the style in 
the rest of the driver, and eliminate the StudlyCaps.

12) don't you need to set blk_queue_max_phys_segments() too?

13) in viodasd_init(), don't you need to undo the effects of 
vio_set_hostlp() if an error occurs?

14) why does vio_set_dma_mask() always return an error?  That seems 
rather useless and unwanted.

Hey, I just merged iSeries veth, so I had to give you some more work... ;-)

	Jeff


P.S.  I so wish that people had named the API function 
dma_alloc_incoherent() rather than dma_alloc_noncoherent :)



  reply	other threads:[~2004-02-26  7:29 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040123163504.36582570.sfr@canb.auug.org.au>
     [not found] ` <20040122221136.174550c3.akpm@osdl.org>
2004-02-26  6:23   ` [PATCH] iSeries virtual disk Stephen Rothwell
2004-02-26  7:29     ` Jeff Garzik [this message]
2004-02-26  7:40       ` Jens Axboe
2004-02-27  0:44         ` Stephen Rothwell
2004-02-26  7:52       ` Stephen Rothwell
2004-02-26  7:58         ` Jeff Garzik
2004-02-27  0:42       ` Stephen Rothwell
2004-02-27  1:50         ` Jeff Garzik
2004-02-27  2:45           ` Stephen Rothwell
2004-02-27  2:50             ` Jeff Garzik
2004-02-26  9:51     ` Christoph Hellwig
2004-02-27  1:04       ` Stephen Rothwell
2004-02-27 11:32         ` Christoph Hellwig
2004-02-27 11:57           ` Stephen Rothwell
2004-02-27 12:13             ` Christoph Hellwig
2004-02-27 13:26               ` Stephen Rothwell
2004-02-27 13:37                 ` Christoph Hellwig
2004-02-27 13:44                   ` Christoph Hellwig
2004-02-27 23:26                     ` Stephen Rothwell
2004-02-26 17:35     ` Linus Torvalds
2004-02-27  0:45       ` Stephen Rothwell

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=403DA056.8030007@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=akpm@osdl.org \
    --cc=anton@samba.org \
    --cc=axboe@suse.de \
    --cc=hch@lst.de \
    --cc=linus@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=paulus@samba.org \
    --cc=piggin@cyberone.com.au \
    --cc=sfr@canb.auug.org.au \
    --cc=viro@parcelfarce.linux.theplanet.co.uk \
    /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