[PATCH] iscsi_tcp - make padbuf non-static

From: Karen Xie <k...@chelsio.com>

virt_to_page() call should not be used on kernel text and data addresses.
virt_to_page() is used by sg_init_one(). So change padbuf to be allocated 
within iscsi_segment.

Signed-off-by: Karen Xie <k...@chelsio.com>
---

 drivers/scsi/iscsi_tcp.c |    3 +--
 drivers/scsi/iscsi_tcp.h |    1 +
 2 files changed, 2 insertions(+), 2 deletions(-)


diff --git a/drivers/scsi/iscsi_tcp.c b/drivers/scsi/iscsi_tcp.c
index ed6c54c..3b07868 100644
--- a/drivers/scsi/iscsi_tcp.c
+++ b/drivers/scsi/iscsi_tcp.c
@@ -190,7 +190,6 @@ iscsi_tcp_segment_splice_digest(struct iscsi_segment 
*segment, void *digest)
 static inline int
 iscsi_tcp_segment_done(struct iscsi_segment *segment, int recv, unsigned 
copied)
 {
-       static unsigned char padbuf[ISCSI_PAD_LEN];
        struct scatterlist sg;
        unsigned int pad;
 
@@ -245,7 +244,7 @@ iscsi_tcp_segment_done(struct iscsi_segment *segment, int 
recv, unsigned copied)
                debug_tcp("consume %d pad bytes\n", pad);
                segment->total_size += pad;
                segment->size = pad;
-               segment->data = padbuf;
+               segment->data = segment->padbuf;
                return 0;
        }
 
diff --git a/drivers/scsi/iscsi_tcp.h b/drivers/scsi/iscsi_tcp.h
index 498d8ca..a906db2 100644
--- a/drivers/scsi/iscsi_tcp.h
+++ b/drivers/scsi/iscsi_tcp.h
@@ -40,6 +40,7 @@ struct iscsi_segment {
        unsigned int            total_copied;
 
        struct hash_desc        *hash;
+       unsigned char           padbuf[ISCSI_PAD_LEN];
        unsigned char           recv_digest[ISCSI_DIGEST_SIZE];
        unsigned char           digest[ISCSI_DIGEST_SIZE];
        unsigned int            digest_len;

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-iscsi@googlegroups.com
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/open-iscsi
-~----------~----~----~----~------~----~------~--~---

Reply via email to