History

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

Linus Torvalds committed 7 years ago

Commit 373c3922 parents 10dce8a d006e954 files · +11 −9Browse files

Unified · Split

4 files
  1. arch/parisc/include/asm/ptrace.h +3 −2
  2. arch/parisc/kernel/process.c +0 −6
  3. arch/parisc/kernel/setup.c +3 −0
  4. drivers/parisc/iosapic.c +5 −1
arch/parisc/include/asm/ptrace.h+3−2
@@ -22,13 +22,14 @@ unsigned long profile_pc(struct pt_regs *); · 21 unmodified lines
2222
2323 static inline unsigned long regs_return_value(struct pt_regs *regs)
2424 {
25− return regs->gr[20];
25+ return regs->gr[28];
2626 }
2727
2828 static inline void instruction_pointer_set(struct pt_regs *regs,
2929 unsigned long val)
3030 {
31− regs->iaoq[0] = val;
31+ regs->iaoq[0] = val;
32+ regs->iaoq[1] = val + 4;
3233 }
3334
3435 /* Query offset/name of register from its name/offset */
arch/parisc/kernel/process.c+0−6
@@ -210,12 +210,6 @@ void __cpuidle arch_cpu_idle(void) · 209 unmodified lines
210210
211211 static int __init parisc_idle_init(void)
212212 {
213− const char *marker;
214−
215− /* check QEMU/SeaBIOS marker in PAGE0 */
216− marker = (char *) &PAGE0->pad0;
217− running_on_qemu = (memcmp(marker, "SeaBIOS", 8) == 0);
218−
219213 if (!running_on_qemu)
220214 cpu_idle_poll_ctrl(1);
221215
arch/parisc/kernel/setup.c+3−0
@@ -397,6 +397,9 @@ void __init start_parisc(void) · 396 unmodified lines
397397 int ret, cpunum;
398398 struct pdc_coproc_cfg coproc_cfg;
399399
400+ /* check QEMU/SeaBIOS marker in PAGE0 */
401+ running_on_qemu = (memcmp(&PAGE0->pad0, "SeaBIOS", 8) == 0);
402+
400403 cpunum = smp_processor_id();
401404
402405 init_cpu_topology();
drivers/parisc/iosapic.c+5−1
@@ -157,8 +157,12 @@ · 156 unmodified lines
157157 #define DBG_IRT(x...)
158158 #endif
159159
160+#ifdef CONFIG_64BIT
161+#define COMPARE_IRTE_ADDR(irte, hpa) ((irte)->dest_iosapic_addr == (hpa))
162+#else
160163 #define COMPARE_IRTE_ADDR(irte, hpa) \
161− ((irte)->dest_iosapic_addr == F_EXTEND(hpa))
164+ ((irte)->dest_iosapic_addr == ((hpa) | 0xffffffff00000000ULL))
165+#endif
162166
163167 #define IOSAPIC_REG_SELECT 0x00
164168 #define IOSAPIC_REG_WINDOW 0x10

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t