diff options
Diffstat (limited to 'arch/s390/hypfs')
-rw-r--r-- | arch/s390/hypfs/hypfs_diag.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/arch/s390/hypfs/hypfs_diag.c b/arch/s390/hypfs/hypfs_diag.c index 874d761c9810..fee5aee605f6 100644 --- a/arch/s390/hypfs/hypfs_diag.c +++ b/arch/s390/hypfs/hypfs_diag.c | |||
@@ -432,12 +432,14 @@ static int diag204_probe(void) | |||
432 | 432 | ||
433 | buf = diag204_get_buffer(INFO_EXT, &pages); | 433 | buf = diag204_get_buffer(INFO_EXT, &pages); |
434 | if (!IS_ERR(buf)) { | 434 | if (!IS_ERR(buf)) { |
435 | if (diag204(SUBC_STIB7 | INFO_EXT, pages, buf) >= 0) { | 435 | if (diag204((unsigned long)SUBC_STIB7 | |
436 | (unsigned long)INFO_EXT, pages, buf) >= 0) { | ||
436 | diag204_store_sc = SUBC_STIB7; | 437 | diag204_store_sc = SUBC_STIB7; |
437 | diag204_info_type = INFO_EXT; | 438 | diag204_info_type = INFO_EXT; |
438 | goto out; | 439 | goto out; |
439 | } | 440 | } |
440 | if (diag204(SUBC_STIB6 | INFO_EXT, pages, buf) >= 0) { | 441 | if (diag204((unsigned long)SUBC_STIB6 | |
442 | (unsigned long)INFO_EXT, pages, buf) >= 0) { | ||
441 | diag204_store_sc = SUBC_STIB7; | 443 | diag204_store_sc = SUBC_STIB7; |
442 | diag204_info_type = INFO_EXT; | 444 | diag204_info_type = INFO_EXT; |
443 | goto out; | 445 | goto out; |
@@ -452,7 +454,8 @@ static int diag204_probe(void) | |||
452 | rc = PTR_ERR(buf); | 454 | rc = PTR_ERR(buf); |
453 | goto fail_alloc; | 455 | goto fail_alloc; |
454 | } | 456 | } |
455 | if (diag204(SUBC_STIB4 | INFO_SIMPLE, pages, buf) >= 0) { | 457 | if (diag204((unsigned long)SUBC_STIB4 | |
458 | (unsigned long)INFO_SIMPLE, pages, buf) >= 0) { | ||
456 | diag204_store_sc = SUBC_STIB4; | 459 | diag204_store_sc = SUBC_STIB4; |
457 | diag204_info_type = INFO_SIMPLE; | 460 | diag204_info_type = INFO_SIMPLE; |
458 | goto out; | 461 | goto out; |
@@ -476,7 +479,8 @@ static void *diag204_store(void) | |||
476 | buf = diag204_get_buffer(diag204_info_type, &pages); | 479 | buf = diag204_get_buffer(diag204_info_type, &pages); |
477 | if (IS_ERR(buf)) | 480 | if (IS_ERR(buf)) |
478 | goto out; | 481 | goto out; |
479 | if (diag204(diag204_store_sc | diag204_info_type, pages, buf) < 0) | 482 | if (diag204((unsigned long)diag204_store_sc | |
483 | (unsigned long)diag204_info_type, pages, buf) < 0) | ||
480 | return ERR_PTR(-ENOSYS); | 484 | return ERR_PTR(-ENOSYS); |
481 | out: | 485 | out: |
482 | return buf; | 486 | return buf; |