aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/block
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2015-02-12 07:08:27 -0500
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2015-03-25 06:49:33 -0400
commit5a79859ae0f35d25c67a03e82bf0c80592f16a39 (patch)
tree37264d49f069812f19ced94e6ae171814fb7e498 /drivers/s390/block
parent1833c9f647e9bda1cd24653ff8f9c207b5f5b911 (diff)
s390: remove 31 bit support
Remove the 31 bit support in order to reduce maintenance cost and effectively remove dead code. Since a couple of years there is no distribution left that comes with a 31 bit kernel. The 31 bit kernel also has been broken since more than a year before anybody noticed. In addition I added a removal warning to the kernel shown at ipl for 5 minutes: a960062e5826 ("s390: add 31 bit warning message") which let everybody know about the plan to remove 31 bit code. We didn't get any response. Given that the last 31 bit only machine was introduced in 1999 let's remove the code. Anybody with 31 bit user space code can still use the compat mode. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block')
-rw-r--r--drivers/s390/block/dasd.c2
-rw-r--r--drivers/s390/block/dasd_diag.h42
-rw-r--r--drivers/s390/block/dasd_eckd.c6
-rw-r--r--drivers/s390/block/dasd_fba.c2
4 files changed, 0 insertions, 52 deletions
diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c
index be34ef41b7c7..697a0b2158e6 100644
--- a/drivers/s390/block/dasd.c
+++ b/drivers/s390/block/dasd.c
@@ -1237,7 +1237,6 @@ EXPORT_SYMBOL(dasd_smalloc_request);
1237 */ 1237 */
1238void dasd_kfree_request(struct dasd_ccw_req *cqr, struct dasd_device *device) 1238void dasd_kfree_request(struct dasd_ccw_req *cqr, struct dasd_device *device)
1239{ 1239{
1240#ifdef CONFIG_64BIT
1241 struct ccw1 *ccw; 1240 struct ccw1 *ccw;
1242 1241
1243 /* Clear any idals used for the request. */ 1242 /* Clear any idals used for the request. */
@@ -1245,7 +1244,6 @@ void dasd_kfree_request(struct dasd_ccw_req *cqr, struct dasd_device *device)
1245 do { 1244 do {
1246 clear_normalized_cda(ccw); 1245 clear_normalized_cda(ccw);
1247 } while (ccw++->flags & (CCW_FLAG_CC | CCW_FLAG_DC)); 1246 } while (ccw++->flags & (CCW_FLAG_CC | CCW_FLAG_DC));
1248#endif
1249 kfree(cqr->cpaddr); 1247 kfree(cqr->cpaddr);
1250 kfree(cqr->data); 1248 kfree(cqr->data);
1251 kfree(cqr); 1249 kfree(cqr);
diff --git a/drivers/s390/block/dasd_diag.h b/drivers/s390/block/dasd_diag.h
index a803cc731586..e84a5468d810 100644
--- a/drivers/s390/block/dasd_diag.h
+++ b/drivers/s390/block/dasd_diag.h
@@ -38,8 +38,6 @@ struct dasd_diag_characteristics {
38 u8 rdev_features; 38 u8 rdev_features;
39} __attribute__ ((packed, aligned(4))); 39} __attribute__ ((packed, aligned(4)));
40 40
41
42#ifdef CONFIG_64BIT
43#define DASD_DIAG_FLAGA_DEFAULT DASD_DIAG_FLAGA_FORMAT_64BIT 41#define DASD_DIAG_FLAGA_DEFAULT DASD_DIAG_FLAGA_FORMAT_64BIT
44 42
45typedef u64 blocknum_t; 43typedef u64 blocknum_t;
@@ -80,43 +78,3 @@ struct dasd_diag_rw_io {
80 struct dasd_diag_bio *bio_list; 78 struct dasd_diag_bio *bio_list;
81 u8 spare4[8]; 79 u8 spare4[8];
82} __attribute__ ((packed, aligned(8))); 80} __attribute__ ((packed, aligned(8)));
83#else /* CONFIG_64BIT */
84#define DASD_DIAG_FLAGA_DEFAULT 0x0
85
86typedef u32 blocknum_t;
87typedef s32 sblocknum_t;
88
89struct dasd_diag_bio {
90 u8 type;
91 u8 status;
92 u16 spare1;
93 blocknum_t block_number;
94 u32 alet;
95 void *buffer;
96} __attribute__ ((packed, aligned(8)));
97
98struct dasd_diag_init_io {
99 u16 dev_nr;
100 u8 flaga;
101 u8 spare1[21];
102 u32 block_size;
103 blocknum_t offset;
104 sblocknum_t start_block;
105 blocknum_t end_block;
106 u8 spare2[24];
107} __attribute__ ((packed, aligned(8)));
108
109struct dasd_diag_rw_io {
110 u16 dev_nr;
111 u8 flaga;
112 u8 spare1[21];
113 u8 key;
114 u8 flags;
115 u8 spare2[2];
116 u32 block_count;
117 u32 alet;
118 struct dasd_diag_bio *bio_list;
119 u32 interrupt_params;
120 u8 spare3[20];
121} __attribute__ ((packed, aligned(8)));
122#endif /* CONFIG_64BIT */
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c
index d47f5b99623a..49b48a887c66 100644
--- a/drivers/s390/block/dasd_eckd.c
+++ b/drivers/s390/block/dasd_eckd.c
@@ -1633,7 +1633,6 @@ static void dasd_eckd_kick_validate_server(struct dasd_device *device)
1633 1633
1634static u32 get_fcx_max_data(struct dasd_device *device) 1634static u32 get_fcx_max_data(struct dasd_device *device)
1635{ 1635{
1636#if defined(CONFIG_64BIT)
1637 int tpm, mdc; 1636 int tpm, mdc;
1638 int fcx_in_css, fcx_in_gneq, fcx_in_features; 1637 int fcx_in_css, fcx_in_gneq, fcx_in_features;
1639 struct dasd_eckd_private *private; 1638 struct dasd_eckd_private *private;
@@ -1657,9 +1656,6 @@ static u32 get_fcx_max_data(struct dasd_device *device)
1657 return 0; 1656 return 0;
1658 } else 1657 } else
1659 return mdc * FCX_MAX_DATA_FACTOR; 1658 return mdc * FCX_MAX_DATA_FACTOR;
1660#else
1661 return 0;
1662#endif
1663} 1659}
1664 1660
1665/* 1661/*
@@ -2615,10 +2611,8 @@ static struct dasd_ccw_req *dasd_eckd_build_cp_cmd_single(
2615 /* Eckd can only do full blocks. */ 2611 /* Eckd can only do full blocks. */
2616 return ERR_PTR(-EINVAL); 2612 return ERR_PTR(-EINVAL);
2617 count += bv.bv_len >> (block->s2b_shift + 9); 2613 count += bv.bv_len >> (block->s2b_shift + 9);
2618#if defined(CONFIG_64BIT)
2619 if (idal_is_needed (page_address(bv.bv_page), bv.bv_len)) 2614 if (idal_is_needed (page_address(bv.bv_page), bv.bv_len))
2620 cidaw += bv.bv_len >> (block->s2b_shift + 9); 2615 cidaw += bv.bv_len >> (block->s2b_shift + 9);
2621#endif
2622 } 2616 }
2623 /* Paranoia. */ 2617 /* Paranoia. */
2624 if (count != last_rec - first_rec + 1) 2618 if (count != last_rec - first_rec + 1)
diff --git a/drivers/s390/block/dasd_fba.c b/drivers/s390/block/dasd_fba.c
index 2c8e68bf9a1c..c9262e78938b 100644
--- a/drivers/s390/block/dasd_fba.c
+++ b/drivers/s390/block/dasd_fba.c
@@ -287,10 +287,8 @@ static struct dasd_ccw_req *dasd_fba_build_cp(struct dasd_device * memdev,
287 /* Fba can only do full blocks. */ 287 /* Fba can only do full blocks. */
288 return ERR_PTR(-EINVAL); 288 return ERR_PTR(-EINVAL);
289 count += bv.bv_len >> (block->s2b_shift + 9); 289 count += bv.bv_len >> (block->s2b_shift + 9);
290#if defined(CONFIG_64BIT)
291 if (idal_is_needed (page_address(bv.bv_page), bv.bv_len)) 290 if (idal_is_needed (page_address(bv.bv_page), bv.bv_len))
292 cidaw += bv.bv_len / blksize; 291 cidaw += bv.bv_len / blksize;
293#endif
294 } 292 }
295 /* Paranoia. */ 293 /* Paranoia. */
296 if (count != last_rec - first_rec + 1) 294 if (count != last_rec - first_rec + 1)