Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [NET] Eliminate user-selectable CONFIG_MV643XX_ETH_[012] [MIPS] Drop __init from init_8259A() [MIPS] Fix Kconfig typo bug [MIPS] Fix double signal on trap and break instruction [MIPS] sigset_32 has been made redundand by compat_sigset_t. [MIPS] emma2rh: Remove needless <asm/i8259.h> inclusion. [MIPS] Add MTD device support for Cobalt
This commit is contained in:
@@ -28,7 +28,7 @@
|
||||
* moves to arch independent land
|
||||
*/
|
||||
|
||||
static int i8259A_auto_eoi;
|
||||
static int i8259A_auto_eoi = -1;
|
||||
DEFINE_SPINLOCK(i8259A_lock);
|
||||
/* some platforms call this... */
|
||||
void mask_and_ack_8259A(unsigned int);
|
||||
@@ -216,7 +216,8 @@ spurious_8259A_irq:
|
||||
|
||||
static int i8259A_resume(struct sys_device *dev)
|
||||
{
|
||||
init_8259A(i8259A_auto_eoi);
|
||||
if (i8259A_auto_eoi >= 0)
|
||||
init_8259A(i8259A_auto_eoi);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -226,8 +227,10 @@ static int i8259A_shutdown(struct sys_device *dev)
|
||||
* the kernel initialization code can get it
|
||||
* out of.
|
||||
*/
|
||||
outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */
|
||||
outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-1 */
|
||||
if (i8259A_auto_eoi >= 0) {
|
||||
outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */
|
||||
outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-1 */
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -252,7 +255,7 @@ static int __init i8259A_init_sysfs(void)
|
||||
|
||||
device_initcall(i8259A_init_sysfs);
|
||||
|
||||
void __init init_8259A(int auto_eoi)
|
||||
void init_8259A(int auto_eoi)
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
|
@@ -108,13 +108,6 @@ typedef struct compat_siginfo {
|
||||
|
||||
/* 32-bit compatibility types */
|
||||
|
||||
#define _NSIG_BPW32 32
|
||||
#define _NSIG_WORDS32 (_NSIG / _NSIG_BPW32)
|
||||
|
||||
typedef struct {
|
||||
unsigned int sig[_NSIG_WORDS32];
|
||||
} sigset_t32;
|
||||
|
||||
typedef unsigned int __sighandler32_t;
|
||||
typedef void (*vfptr_t)(void);
|
||||
|
||||
@@ -136,7 +129,7 @@ struct ucontext32 {
|
||||
s32 uc_link;
|
||||
stack32_t uc_stack;
|
||||
struct sigcontext32 uc_mcontext;
|
||||
sigset_t32 uc_sigmask; /* mask last for extensibility */
|
||||
compat_sigset_t uc_sigmask; /* mask last for extensibility */
|
||||
};
|
||||
|
||||
/*
|
||||
|
@@ -704,6 +704,7 @@ asmlinkage void do_bp(struct pt_regs *regs)
|
||||
die_if_kernel("Break instruction in kernel code", regs);
|
||||
force_sig(SIGTRAP, current);
|
||||
}
|
||||
return;
|
||||
|
||||
out_sigsegv:
|
||||
force_sig(SIGSEGV, current);
|
||||
@@ -747,6 +748,7 @@ asmlinkage void do_tr(struct pt_regs *regs)
|
||||
die_if_kernel("Trap instruction in kernel code", regs);
|
||||
force_sig(SIGTRAP, current);
|
||||
}
|
||||
return;
|
||||
|
||||
out_sigsegv:
|
||||
force_sig(SIGSEGV, current);
|
||||
|
Reference in New Issue
Block a user