diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-06-27 11:57:46 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-06-27 11:57:46 -0400 |
commit | 9c317b3bed40fed07e2ed536afca3b58952ac432 (patch) | |
tree | 9c3cc35a09cca665bdfcb85b1a1da37e221cc914 /arch | |
parent | 258e43fdb00c73d424b114ae3850accd55b27cbb (diff) | |
parent | 859c965149ab5004b58b1fffd98190b6664cb717 (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] allow setting of upper 32 bit in smp_ctl_set_bit
[S390] hwsampler: Set a sane default sampling rate
[S390] s390: enforce HW limits for the initial sampling rate
[S390] kvm-s390: fix kconfig dependencies
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/Kconfig | 1 | ||||
-rw-r--r-- | arch/s390/kernel/smp.c | 4 | ||||
-rw-r--r-- | arch/s390/oprofile/init.c | 8 |
3 files changed, 10 insertions, 3 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 90d77bd078f5..c03fef7a9c22 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -579,6 +579,7 @@ config S390_GUEST | |||
579 | def_bool y | 579 | def_bool y |
580 | prompt "s390 guest support for KVM (EXPERIMENTAL)" | 580 | prompt "s390 guest support for KVM (EXPERIMENTAL)" |
581 | depends on 64BIT && EXPERIMENTAL | 581 | depends on 64BIT && EXPERIMENTAL |
582 | select VIRTUALIZATION | ||
582 | select VIRTIO | 583 | select VIRTIO |
583 | select VIRTIO_RING | 584 | select VIRTIO_RING |
584 | select VIRTIO_CONSOLE | 585 | select VIRTIO_CONSOLE |
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index 52420d2785b3..1d55c95f617c 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c | |||
@@ -262,7 +262,7 @@ void smp_ctl_set_bit(int cr, int bit) | |||
262 | 262 | ||
263 | memset(&parms.orvals, 0, sizeof(parms.orvals)); | 263 | memset(&parms.orvals, 0, sizeof(parms.orvals)); |
264 | memset(&parms.andvals, 0xff, sizeof(parms.andvals)); | 264 | memset(&parms.andvals, 0xff, sizeof(parms.andvals)); |
265 | parms.orvals[cr] = 1 << bit; | 265 | parms.orvals[cr] = 1UL << bit; |
266 | on_each_cpu(smp_ctl_bit_callback, &parms, 1); | 266 | on_each_cpu(smp_ctl_bit_callback, &parms, 1); |
267 | } | 267 | } |
268 | EXPORT_SYMBOL(smp_ctl_set_bit); | 268 | EXPORT_SYMBOL(smp_ctl_set_bit); |
@@ -276,7 +276,7 @@ void smp_ctl_clear_bit(int cr, int bit) | |||
276 | 276 | ||
277 | memset(&parms.orvals, 0, sizeof(parms.orvals)); | 277 | memset(&parms.orvals, 0, sizeof(parms.orvals)); |
278 | memset(&parms.andvals, 0xff, sizeof(parms.andvals)); | 278 | memset(&parms.andvals, 0xff, sizeof(parms.andvals)); |
279 | parms.andvals[cr] = ~(1L << bit); | 279 | parms.andvals[cr] = ~(1UL << bit); |
280 | on_each_cpu(smp_ctl_bit_callback, &parms, 1); | 280 | on_each_cpu(smp_ctl_bit_callback, &parms, 1); |
281 | } | 281 | } |
282 | EXPORT_SYMBOL(smp_ctl_clear_bit); | 282 | EXPORT_SYMBOL(smp_ctl_clear_bit); |
diff --git a/arch/s390/oprofile/init.c b/arch/s390/oprofile/init.c index 5995e9bc72d9..0e358c2cffeb 100644 --- a/arch/s390/oprofile/init.c +++ b/arch/s390/oprofile/init.c | |||
@@ -25,7 +25,7 @@ extern void s390_backtrace(struct pt_regs * const regs, unsigned int depth); | |||
25 | 25 | ||
26 | #include "hwsampler.h" | 26 | #include "hwsampler.h" |
27 | 27 | ||
28 | #define DEFAULT_INTERVAL 4096 | 28 | #define DEFAULT_INTERVAL 4127518 |
29 | 29 | ||
30 | #define DEFAULT_SDBT_BLOCKS 1 | 30 | #define DEFAULT_SDBT_BLOCKS 1 |
31 | #define DEFAULT_SDB_BLOCKS 511 | 31 | #define DEFAULT_SDB_BLOCKS 511 |
@@ -151,6 +151,12 @@ static int oprofile_hwsampler_init(struct oprofile_operations *ops) | |||
151 | if (oprofile_max_interval == 0) | 151 | if (oprofile_max_interval == 0) |
152 | return -ENODEV; | 152 | return -ENODEV; |
153 | 153 | ||
154 | /* The initial value should be sane */ | ||
155 | if (oprofile_hw_interval < oprofile_min_interval) | ||
156 | oprofile_hw_interval = oprofile_min_interval; | ||
157 | if (oprofile_hw_interval > oprofile_max_interval) | ||
158 | oprofile_hw_interval = oprofile_max_interval; | ||
159 | |||
154 | if (oprofile_timer_init(ops)) | 160 | if (oprofile_timer_init(ops)) |
155 | return -ENODEV; | 161 | return -ENODEV; |
156 | 162 | ||