diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-29 11:49:18 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-29 11:49:18 -0400 |
commit | f56f44001cb5b40089deac094dbb74e5c9f64d81 (patch) | |
tree | 0fb004b475852ed87121a774de7b768bb6164156 /arch/s390/hypfs | |
parent | 162164f7e92da970666e7492fd58644f3c1f8574 (diff) | |
parent | 9ec2708053b647969bee862902872d44a5f9b439 (diff) |
Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
[S390] fix kprobes single stepping
[S390] tape: fix dbf usage
[S390] dasd: provide a Sense Path Group ID ioctl
[S390] ftrace: select HAVE_C_RECORDMCOUNT
[S390] vdso: get rid of redefinition warnings
[S390] facility detection: remove unused variable
[S390] hypfs: Fix error handling in hypfs_diag initialization
[S390] topology: fix cpu masks for topology=off case
[S390] topology: add SCHED_MC config option
[S390] Kconfig: add machine type number to code generation options
[S390] Add z196 machine type to setup_hwcaps
Diffstat (limited to 'arch/s390/hypfs')
-rw-r--r-- | arch/s390/hypfs/hypfs_diag.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/arch/s390/hypfs/hypfs_diag.c b/arch/s390/hypfs/hypfs_diag.c index 020e51c063d2..cd4a81be9cf8 100644 --- a/arch/s390/hypfs/hypfs_diag.c +++ b/arch/s390/hypfs/hypfs_diag.c | |||
@@ -638,18 +638,21 @@ __init int hypfs_diag_init(void) | |||
638 | pr_err("The hardware system does not support hypfs\n"); | 638 | pr_err("The hardware system does not support hypfs\n"); |
639 | return -ENODATA; | 639 | return -ENODATA; |
640 | } | 640 | } |
641 | rc = diag224_get_name_table(); | ||
642 | if (rc) { | ||
643 | diag204_free_buffer(); | ||
644 | pr_err("The hardware system does not provide all " | ||
645 | "functions required by hypfs\n"); | ||
646 | } | ||
647 | if (diag204_info_type == INFO_EXT) { | 641 | if (diag204_info_type == INFO_EXT) { |
648 | rc = hypfs_dbfs_init(); | 642 | rc = hypfs_dbfs_init(); |
649 | if (rc) | 643 | if (rc) |
650 | diag204_free_buffer(); | 644 | return rc; |
651 | } | 645 | } |
652 | return rc; | 646 | if (MACHINE_IS_LPAR) { |
647 | rc = diag224_get_name_table(); | ||
648 | if (rc) { | ||
649 | pr_err("The hardware system does not provide all " | ||
650 | "functions required by hypfs\n"); | ||
651 | debugfs_remove(dbfs_d204_file); | ||
652 | return rc; | ||
653 | } | ||
654 | } | ||
655 | return 0; | ||
653 | } | 656 | } |
654 | 657 | ||
655 | void hypfs_diag_exit(void) | 658 | void hypfs_diag_exit(void) |