Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cb81fc6a authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull parisc fixes from Helge Deller:
 "There are two important fixes here:

   - Add PCI quirks to disable built-in a serial AUX and a graphics
     cards from specific GSP (management board) PCI cards. This fixes
     boot via serial console on rp3410 and rp3440 machines.

   - Revert the "Re-enable interrups early" patch which was added to
     kernel v4.10. It can trigger stack overflows and thus silent data
     corruption. With this patch reverted we can lower our thread stack
     back to 16kb again.

  The other patches are minor cleanups: avoid duplicate includes,
  indenting fixes, correctly align variable in asm code"

* 'parisc-4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
  parisc: Reduce thread stack to 16 kb
  Revert "parisc: Re-enable interrupts early"
  parisc: remove duplicate includes
  parisc: Hide Diva-built-in serial aux and graphics card
  parisc: Align os_hpmc_size on word boundary
  parisc: Fix indenting in puts()
parents 64a48099 da57c541
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -35,7 +35,12 @@ struct thread_info {

/* thread information allocation */

#ifdef CONFIG_IRQSTACKS
#define THREAD_SIZE_ORDER	2 /* PA-RISC requires at least 16k stack */
#else
#define THREAD_SIZE_ORDER	3 /* PA-RISC requires at least 32k stack */
#endif

/* Be sure to hunt all references to this down when you change the size of
 * the kernel stack */
#define THREAD_SIZE             (PAGE_SIZE << THREAD_SIZE_ORDER)
+9 −3
Original line number Diff line number Diff line
@@ -878,9 +878,6 @@ ENTRY_CFI(syscall_exit_rfi)
	STREG   %r19,PT_SR7(%r16)

intr_return:
	/* NOTE: Need to enable interrupts incase we schedule. */
	ssm     PSW_SM_I, %r0

	/* check for reschedule */
	mfctl   %cr30,%r1
	LDREG   TI_FLAGS(%r1),%r19	/* sched.h: TIF_NEED_RESCHED */
@@ -907,6 +904,11 @@ intr_check_sig:
	LDREG	PT_IASQ1(%r16), %r20
	cmpib,COND(=),n 0,%r20,intr_restore /* backward */

	/* NOTE: We need to enable interrupts if we have to deliver
	 * signals. We used to do this earlier but it caused kernel
	 * stack overflows. */
	ssm     PSW_SM_I, %r0

	copy	%r0, %r25			/* long in_syscall = 0 */
#ifdef CONFIG_64BIT
	ldo	-16(%r30),%r29			/* Reference param save area */
@@ -958,6 +960,10 @@ intr_do_resched:
	cmpib,COND(=)	0, %r20, intr_do_preempt
	nop

	/* NOTE: We need to enable interrupts if we schedule.  We used
	 * to do this earlier but it caused kernel stack overflows. */
	ssm     PSW_SM_I, %r0

#ifdef CONFIG_64BIT
	ldo	-16(%r30),%r29		/* Reference param save area */
#endif
+1 −0
Original line number Diff line number Diff line
@@ -305,6 +305,7 @@ ENDPROC_CFI(os_hpmc)


	__INITRODATA
	.align 4
	.export os_hpmc_size
os_hpmc_size:
	.word .os_hpmc_end-.os_hpmc
+0 −1
Original line number Diff line number Diff line
@@ -15,7 +15,6 @@
#include <linux/slab.h>
#include <linux/kallsyms.h>
#include <linux/sort.h>
#include <linux/sched.h>

#include <linux/uaccess.h>
#include <asm/assembly.h>
+0 −2
Original line number Diff line number Diff line
@@ -16,9 +16,7 @@
#include <linux/preempt.h>
#include <linux/init.h>

#include <asm/processor.h>
#include <asm/delay.h>

#include <asm/special_insns.h>    /* for mfctl() */
#include <asm/processor.h> /* for boot_cpu_data */

Loading