Re: [PATCH-v2 06/12] target: Add memory allocation forbidirectional commands

From: Nicholas A. Bellinger
Date: Sat Aug 24 2013 - 19:37:17 EST


On Sat, 2013-08-24 at 08:18 -0700, Christoph Hellwig wrote:
> > static int
> > +transport_generic_get_mem_bidi(struct se_cmd *cmd)
>
> Except for the fields touched in struct se_cmd this is a duplication
> of transport_generic_get_mem. I'd suggest to factor that one into
> a new helper:
>
> static int
> target_alloc_sgl(struct scatterlist **sgl, unsigned int **nents,
> u32 length, gfp_t gfp_mask)
> {
> ..
> }
>
> and then call that one from transport_generic_new_cmd directly,

Sounds reasonable enough, doing that bit of refactoring now..

> including opencoding the actual BIDI case there as a first step.
>

Not sure why this needs to be opencoded for BIDI, instead of just doing
target_alloc_sgl(&cmd->t_bidi_data_sg, ...) for the two SCF_BIDI ||
SCF_COMPARE_AND_WRITE cases in transport_generic_new_cmd()..?

--nab

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/