All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Andy Grover <agrover@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	"Nicholas A. Bellinger" <nab@linux-iscsi.org>,
	linux-iscsi-target-dev@googlegroups.com,
	linux-scsi <linux-scsi@vger.kernel.org>,
	James Bottomley <James.Bottomley@HansenPartnership.com>
Subject: Re: [PATCH 0/42 RESEND+NEW] Target updates for May 27
Date: Mon, 30 May 2011 08:56:04 -0400	[thread overview]
Message-ID: <20110530125604.GA15449@infradead.org> (raw)
In-Reply-To: <4DE1AE2F.70705@redhat.com>

On Sat, May 28, 2011 at 07:23:43PM -0700, Andy Grover wrote:
> I guess this is my fault for not CCing linux-scsi. I'm working on tcm
> cleanups and have been sending them to linux-iscsi-target-dev, because
> there are a lot of them. Aren't you guys on that list too?

I'm not on it.  In fact I didn't really know about it until known.

I'll take all my complains back in that case, my fault for not beeing
on the proper list.

> In any case, here's my git tree for review hch, I've been developing
> against nab's lio-41, under the perhaps mistaken assumption that it all
> would go in and then patched up to snuff:
> 
> git://fedorapeople.org/home/fedora/grover/public_git/linux-2.6.git for-nab

Looks pretty good, and removes a few items from my todo list.

Some comments on the patches:

"target: get_cdb should never return NULL":

	looks good by itself, but I think the real fix here is to not
	leave the CDB allocation to the I/O backend, but just include
	it in the se_task.  Or maybe even in the se_cmd once that
	whole CDB splitting mess is moved into pscsi, which will
	simplify the common code further,

"target: inline struct se_transport_task into struct se_task"

	The description is wrong, it's moved into the se_cmd, which
	is the correct thing to do anyway.

"target: Rename transport_generic_handle_cdb to _new_cmd"

	About the naming:  For now it's transport_generic for exported
	APIs I think.  IMHO it's a pretty bad choice and should be
	replaced by target_, but let's do that in one big sweep.

"target: Have iscsi fabric allocate its own buffers"

	ceil seems to be a reimplementation of DIV_ROUND_UP from
	kernel.h

"target/iscsi: Do not use t_mem_list anymore"

	Very nice cleanup!

"target: Call transport_new_cmd instead of adding to cmd queue"

	Did you test all other frontends that they are fine with this
	change?
	Also the code really needs to handle errors from transport_new_cmd.

	The comment above transport_generic_new_cmd needs an update,
	or even better the wrapper should be killed and callers should
	use transport_new_cmd directly.
	The TRANSPORT_NEW_CMD enum value and code switch case in
	transport_processing_thread cab be removed now.

	Btw, it seems like transport_processing_thread and the various
	helpers to queue up work to it could be nicely cleaned up
	by using a workqueue with a work item embedded into the
	se_cmd.  That way this work could a) be made to scale to
	multiple CPUs, and b) we could kill new_cmd_map by just
	allowing the frontend to setup their own work queue handlers
	instead of going through this abstraction.

"target/file: Alloc iov[] off the stack"

	We can get pretty large iovecs, and blindly allocation them on
	the stack seems like a bad idea.  It might make sense to do
	so for the fast path, which means we'd need a __fd_do_readv
	that gets the vector passed, and then a smart wrapper using
	the stack for small vectors, and some technic making sure
	gcc doesn't bloat the stack otherwise.

  reply	other threads:[~2011-05-30 12:56 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1306523240-15543-1-git-send-email-agrover@redhat.com>
2011-05-27 22:15 ` [PATCH 0/42 RESEND+NEW] Target updates for May 27 Nicholas A. Bellinger
2011-05-27 22:35   ` Christoph Hellwig
2011-05-27 23:39     ` Nicholas A. Bellinger
2011-05-28  7:43       ` Christoph Hellwig
2011-05-28 19:09         ` Nicholas A. Bellinger
2011-05-29  2:23         ` Andy Grover
2011-05-30 12:56           ` Christoph Hellwig [this message]
     [not found] ` <1306523240-15543-11-git-send-email-agrover@redhat.com>
2011-05-31  7:08   ` [PATCH 10/42] target: Rewrite transport_init_task_sg() Nicholas A. Bellinger
2011-05-31 21:04     ` Andy Grover
2011-05-31 21:08       ` Christoph Hellwig
2011-06-01  0:33         ` Nicholas A. Bellinger
     [not found] ` <1306523240-15543-38-git-send-email-agrover@redhat.com>
2011-05-31  9:00   ` [PATCH 37/42] target/iscsi: Do not use t_mem_list anymore Nicholas A. Bellinger
     [not found] ` <1306523240-15543-40-git-send-email-agrover@redhat.com>
2011-05-31  9:32   ` [PATCH 39/42] target: Call transport_new_cmd instead of adding to cmd queue Nicholas A. Bellinger
2011-05-31  9:48     ` Christoph Hellwig
2011-05-31 10:10       ` Nicholas A. Bellinger
2011-05-31 10:22         ` Christoph Hellwig
2011-05-31 11:22           ` Nicholas A. Bellinger
2011-05-31 10:17     ` Christoph Hellwig
2011-05-31 11:18       ` Nicholas A. Bellinger
2011-06-01  4:09         ` Christoph Hellwig
2011-06-04  2:33           ` Nicholas A. Bellinger
2011-06-04 14:18             ` Christoph Hellwig
     [not found] ` <1306523240-15543-42-git-send-email-agrover@redhat.com>
2011-05-31  9:58   ` [PATCH 41/42] target/iscsi: remove unsolicited_data_comp completion Nicholas A. Bellinger
     [not found] ` <1306523240-15543-43-git-send-email-agrover@redhat.com>
2011-05-31 10:59   ` [PATCH 42/42] target/file: Alloc iov[] off the stack Nicholas A. Bellinger

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=20110530125604.GA15449@infradead.org \
    --to=hch@infradead.org \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=agrover@redhat.com \
    --cc=linux-iscsi-target-dev@googlegroups.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=nab@linux-iscsi.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.