Commit 373c3925 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'parisc-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux

Pull parisc fixes from Helge Deller:
 "A 32-bit boot regression fix introduced in the merge window, a QEMU
  detection fix and two fixes by Sven regarding ptrace & kprobes"

* 'parisc-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
  parisc: Detect QEMU earlier in boot process
  parisc: also set iaoq_b in instruction_pointer_set()
  parisc: regs_return_value() should return gpr28
  Revert: parisc: Use F_EXTEND() macro in iosapic code
parents 10dce8af d006e95b
...@@ -22,13 +22,14 @@ unsigned long profile_pc(struct pt_regs *); ...@@ -22,13 +22,14 @@ unsigned long profile_pc(struct pt_regs *);
static inline unsigned long regs_return_value(struct pt_regs *regs) static inline unsigned long regs_return_value(struct pt_regs *regs)
{ {
return regs->gr[20]; return regs->gr[28];
} }
static inline void instruction_pointer_set(struct pt_regs *regs, static inline void instruction_pointer_set(struct pt_regs *regs,
unsigned long val) unsigned long val)
{ {
regs->iaoq[0] = val; regs->iaoq[0] = val;
regs->iaoq[1] = val + 4;
} }
/* Query offset/name of register from its name/offset */ /* Query offset/name of register from its name/offset */
......
...@@ -210,12 +210,6 @@ void __cpuidle arch_cpu_idle(void) ...@@ -210,12 +210,6 @@ void __cpuidle arch_cpu_idle(void)
static int __init parisc_idle_init(void) static int __init parisc_idle_init(void)
{ {
const char *marker;
/* check QEMU/SeaBIOS marker in PAGE0 */
marker = (char *) &PAGE0->pad0;
running_on_qemu = (memcmp(marker, "SeaBIOS", 8) == 0);
if (!running_on_qemu) if (!running_on_qemu)
cpu_idle_poll_ctrl(1); cpu_idle_poll_ctrl(1);
......
...@@ -397,6 +397,9 @@ void __init start_parisc(void) ...@@ -397,6 +397,9 @@ void __init start_parisc(void)
int ret, cpunum; int ret, cpunum;
struct pdc_coproc_cfg coproc_cfg; struct pdc_coproc_cfg coproc_cfg;
/* check QEMU/SeaBIOS marker in PAGE0 */
running_on_qemu = (memcmp(&PAGE0->pad0, "SeaBIOS", 8) == 0);
cpunum = smp_processor_id(); cpunum = smp_processor_id();
init_cpu_topology(); init_cpu_topology();
......
...@@ -157,8 +157,12 @@ ...@@ -157,8 +157,12 @@
#define DBG_IRT(x...) #define DBG_IRT(x...)
#endif #endif
#ifdef CONFIG_64BIT
#define COMPARE_IRTE_ADDR(irte, hpa) ((irte)->dest_iosapic_addr == (hpa))
#else
#define COMPARE_IRTE_ADDR(irte, hpa) \ #define COMPARE_IRTE_ADDR(irte, hpa) \
((irte)->dest_iosapic_addr == F_EXTEND(hpa)) ((irte)->dest_iosapic_addr == ((hpa) | 0xffffffff00000000ULL))
#endif
#define IOSAPIC_REG_SELECT 0x00 #define IOSAPIC_REG_SELECT 0x00
#define IOSAPIC_REG_WINDOW 0x10 #define IOSAPIC_REG_WINDOW 0x10
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment