aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/st.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/st.h')
-rw-r--r--drivers/scsi/st.h14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/scsi/st.h b/drivers/scsi/st.h
index b92712f95931..544dc6b1f548 100644
--- a/drivers/scsi/st.h
+++ b/drivers/scsi/st.h
@@ -29,6 +29,7 @@ struct st_request {
29 int result; 29 int result;
30 struct scsi_tape *stp; 30 struct scsi_tape *stp;
31 struct completion *waiting; 31 struct completion *waiting;
32 struct bio *bio;
32}; 33};
33 34
34/* The tape buffer descriptor. */ 35/* The tape buffer descriptor. */
@@ -44,20 +45,13 @@ struct st_buffer {
44 int syscall_result; 45 int syscall_result;
45 struct st_request *last_SRpnt; 46 struct st_request *last_SRpnt;
46 struct st_cmdstatus cmdstat; 47 struct st_cmdstatus cmdstat;
48 struct page **reserved_pages;
49 struct page **mapped_pages;
50 struct rq_map_data map_data;
47 unsigned char *b_data; 51 unsigned char *b_data;
48 unsigned short use_sg; /* zero or max number of s/g segments for this adapter */ 52 unsigned short use_sg; /* zero or max number of s/g segments for this adapter */
49 unsigned short sg_segs; /* number of segments in s/g list */ 53 unsigned short sg_segs; /* number of segments in s/g list */
50 unsigned short orig_frp_segs; /* number of segments allocated at first try */
51 unsigned short frp_segs; /* number of buffer segments */ 54 unsigned short frp_segs; /* number of buffer segments */
52 unsigned int frp_sg_current; /* driver buffer length currently in s/g list */
53 struct st_buf_fragment *frp; /* the allocated buffer fragment list */
54 struct scatterlist sg[1]; /* MUST BE last item */
55};
56
57/* The tape buffer fragment descriptor */
58struct st_buf_fragment {
59 struct page *page;
60 unsigned int length;
61}; 55};
62 56
63/* The tape mode definition */ 57/* The tape mode definition */