lkml.org 
[lkml]   [2011]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: scsi: include linux/scatterlist.h to pick up ARCH_HAS_SG_CHAIN
On 01/16/2011 10:12 PM, David Dillow wrote:
> If the compiled object doesn't include linux/scatterlist.h before
> scsi/scsi.h, it will get an incorrect definition of
> SCSI_MAX_SG_CHAIN_SEGMENTS.
>
> Signed-off-by: David Dillow <dillowda@ornl.gov>
> --
> This fixes an issue I found while working on the SRP initiator, where
> linux/scatterlist.h was being pulled in by scsi/scsi_device.h. It's not
> clear if I'm supposed to include linux/scatterlist.h myself, or if I'm
> including the scsi headers in the wrong order. It makes sense for me
> that scsi.h would pickup the needed headers itself to prevent confusion.
>

I totally agree. This below is the proper fix!

> Another option is to potentially get rid of the ARCH_HAS_SG_CHAIN define
> as all archs have it save m68knommu.
>

What's preventing m68knommu from chaining? this is pure C manipulations,
what am I missing?

Thanks for catching this. As is, it is vary dangerous. I wonder where
else did it hit unnoticed?

Boaz

>
> diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h
> index 648d233..b76d400 100644
> --- a/include/scsi/scsi.h
> +++ b/include/scsi/scsi.h
> @@ -9,6 +9,7 @@
> #define _SCSI_SCSI_H
>
> #include <linux/types.h>
> +#include <linux/scatterlist.h>
>
> struct scsi_cmnd;
>
>


\
 
 \ /
  Last update: 2011-01-17 10:45    [W:0.504 / U:0.140 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site