diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-29 23:25:03 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-29 23:25:03 -0400 |
| commit | 9754c5f6cbbd8893a29f139204e87a59eb342ca9 (patch) | |
| tree | 43601ee92855a8b7272c30073f6037b94523ad06 /arch | |
| parent | efab03d998da03f67836ffc664b04e0400f85448 (diff) | |
| parent | dbfc2f6f95c7e62b9a379d9a34f8427f1d844ee1 (diff) | |
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
[IA64] Fix arch/ia64/pci/pci.c:571: warning: `return' with a value
[IA64] Speed up boot - skip unnecessary clock calibration
[IA64] bugfix stack layout upside-down
[IA64] Fix possible invalid memory access in ia64_setup_msi_irq()
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/ia64/kernel/msi_ia64.c | 2 | ||||
| -rw-r--r-- | arch/ia64/kernel/smpboot.c | 17 | ||||
| -rw-r--r-- | arch/ia64/mm/init.c | 2 | ||||
| -rw-r--r-- | arch/ia64/pci/pci.c | 1 |
4 files changed, 18 insertions, 4 deletions
diff --git a/arch/ia64/kernel/msi_ia64.c b/arch/ia64/kernel/msi_ia64.c index e7220900ea14..ebbeadfee42d 100644 --- a/arch/ia64/kernel/msi_ia64.c +++ b/arch/ia64/kernel/msi_ia64.c | |||
| @@ -68,7 +68,7 @@ int ia64_setup_msi_irq(struct pci_dev *pdev, struct msi_desc *desc) | |||
| 68 | { | 68 | { |
| 69 | struct msi_msg msg; | 69 | struct msi_msg msg; |
| 70 | unsigned long dest_phys_id; | 70 | unsigned long dest_phys_id; |
| 71 | unsigned int irq, vector; | 71 | int irq, vector; |
| 72 | 72 | ||
| 73 | irq = create_irq(); | 73 | irq = create_irq(); |
| 74 | if (irq < 0) | 74 | if (irq < 0) |
diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c index b21ddecea943..ff7df439da6d 100644 --- a/arch/ia64/kernel/smpboot.c +++ b/arch/ia64/kernel/smpboot.c | |||
| @@ -375,6 +375,7 @@ static void __devinit | |||
| 375 | smp_callin (void) | 375 | smp_callin (void) |
| 376 | { | 376 | { |
| 377 | int cpuid, phys_id, itc_master; | 377 | int cpuid, phys_id, itc_master; |
| 378 | struct cpuinfo_ia64 *last_cpuinfo, *this_cpuinfo; | ||
| 378 | extern void ia64_init_itm(void); | 379 | extern void ia64_init_itm(void); |
| 379 | extern volatile int time_keeper_id; | 380 | extern volatile int time_keeper_id; |
| 380 | 381 | ||
| @@ -424,7 +425,21 @@ smp_callin (void) | |||
| 424 | * Get our bogomips. | 425 | * Get our bogomips. |
| 425 | */ | 426 | */ |
| 426 | ia64_init_itm(); | 427 | ia64_init_itm(); |
| 427 | calibrate_delay(); | 428 | |
| 429 | /* | ||
| 430 | * Delay calibration can be skipped if new processor is identical to the | ||
| 431 | * previous processor. | ||
| 432 | */ | ||
| 433 | last_cpuinfo = cpu_data(cpuid - 1); | ||
| 434 | this_cpuinfo = local_cpu_data; | ||
| 435 | if (last_cpuinfo->itc_freq != this_cpuinfo->itc_freq || | ||
| 436 | last_cpuinfo->proc_freq != this_cpuinfo->proc_freq || | ||
| 437 | last_cpuinfo->features != this_cpuinfo->features || | ||
| 438 | last_cpuinfo->revision != this_cpuinfo->revision || | ||
| 439 | last_cpuinfo->family != this_cpuinfo->family || | ||
| 440 | last_cpuinfo->archrev != this_cpuinfo->archrev || | ||
| 441 | last_cpuinfo->model != this_cpuinfo->model) | ||
| 442 | calibrate_delay(); | ||
| 428 | local_cpu_data->loops_per_jiffy = loops_per_jiffy; | 443 | local_cpu_data->loops_per_jiffy = loops_per_jiffy; |
| 429 | 444 | ||
| 430 | #ifdef CONFIG_IA32_SUPPORT | 445 | #ifdef CONFIG_IA32_SUPPORT |
diff --git a/arch/ia64/mm/init.c b/arch/ia64/mm/init.c index c8da621aab17..4f36987eea72 100644 --- a/arch/ia64/mm/init.c +++ b/arch/ia64/mm/init.c | |||
| @@ -155,7 +155,7 @@ ia64_set_rbs_bot (void) | |||
| 155 | 155 | ||
| 156 | if (stack_size > MAX_USER_STACK_SIZE) | 156 | if (stack_size > MAX_USER_STACK_SIZE) |
| 157 | stack_size = MAX_USER_STACK_SIZE; | 157 | stack_size = MAX_USER_STACK_SIZE; |
| 158 | current->thread.rbs_bot = STACK_TOP - stack_size; | 158 | current->thread.rbs_bot = PAGE_ALIGN(current->mm->start_stack - stack_size); |
| 159 | } | 159 | } |
| 160 | 160 | ||
| 161 | /* | 161 | /* |
diff --git a/arch/ia64/pci/pci.c b/arch/ia64/pci/pci.c index f8bcccd6d417..0e83f3b419b5 100644 --- a/arch/ia64/pci/pci.c +++ b/arch/ia64/pci/pci.c | |||
| @@ -568,7 +568,6 @@ pcibios_disable_device (struct pci_dev *dev) | |||
| 568 | BUG_ON(atomic_read(&dev->enable_cnt)); | 568 | BUG_ON(atomic_read(&dev->enable_cnt)); |
| 569 | if (!dev->msi_enabled) | 569 | if (!dev->msi_enabled) |
| 570 | acpi_pci_irq_disable(dev); | 570 | acpi_pci_irq_disable(dev); |
| 571 | return 0; | ||
| 572 | } | 571 | } |
| 573 | 572 | ||
| 574 | void | 573 | void |
