asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs)
{
struct irqdesc *desc = irq_desc + irq;
- struct vx_info_save vxis;
/*
* Some hardware gives randomly wrong interrupts. Rather
desc = &bad_irq_desc;
irq_enter();
+
desc_handle_irq(irq, desc, regs);
/* AT91 specific workaround */
irq_finish(irq);
+
irq_exit();
}
asmlinkage void do_IRQ(int irq, struct pt_regs * regs)
{
unsigned long sp;
-
irq_enter();
sp = rdsp();
if (unlikely((sp & (PAGE_SIZE - 1)) < (PAGE_SIZE/8))) {
}
}
#endif
+
#ifdef CONFIG_4KSTACKS
curctx = (union irq_ctx *) current_thread_info();
#ifdef CONFIG_PPC_ISERIES
if (get_lppaca()->int_dword.fields.decr_int) {
-
get_lppaca()->int_dword.fields.decr_int = 0;
/* Signal a fake decrementer interrupt */
timer_interrupt(regs);
#include <linux/errno.h>
#include <linux/kernel_stat.h>
#include <linux/interrupt.h>
-#include <linux/vs_context.h>
#include <asm/lowcore.h>
#include <asm/s390_ext.h>
#include <linux/smp_lock.h>
#include <linux/spinlock.h>
#include <linux/seq_file.h>
-#include <linux/vs_context.h>
#include <asm/ptrace.h>
#include <asm/processor.h>
*/
unsigned int do_IRQ(int irq, union uml_pt_regs *regs)
{
- irq_enter();
-
- __do_IRQ(irq, (struct pt_regs *)regs);
- irq_exit();
- return 1;
+ irq_enter();
+ __do_IRQ(irq, (struct pt_regs *)regs);
+ irq_exit();
+ return 1;
}
int um_request_irq(unsigned int irq, int fd, int type,
sp - sizeof(struct thread_info));
}
#endif
+
__do_IRQ(irq, regs);
+
irq_exit();
return 1;
#include <linux/completion.h>
#include <linux/highmem.h>
#include <linux/gfp.h>
-#include <linux/vs_context.h>
#include <asm/uaccess.h>
#include <linux/device.h>
#include <linux/kernel_stat.h>
#include <linux/interrupt.h>
-#include <linux/vs_context.h>
#include <asm/cio.h>
#include <asm/delay.h>
spin_lock(&sch->lock);
/* Store interrupt response block to lowcore. */
if (tsch (tpi_info->schid, irb) == 0 && sch) {
-
/* Keep subchannel information word up to date. */
memcpy (&sch->schib.scsw, &irb->scsw,
sizeof (irb->scsw));
sb = mnt->mnt_sb;
error = -EPERM;
- if (!capable(CAP_SYS_ADMIN) && !sb->s_bdev &&
+ if (!vx_capable(CAP_SYS_ADMIN, VXC_BINARY_MOUNT) && !sb->s_bdev &&
(sb->s_magic != PROC_SUPER_MAGIC) &&
(sb->s_magic != DEVPTS_SUPER_MAGIC))
goto out_sb;
#include <linux/random.h>
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
-#include <linux/vs_context.h>
#include "internals.h"
/* minimum */
0
, /* softlimit */
- MASK_ENTRY( RLIMIT_RSS ) |
- MASK_ENTRY( VLIMIT_ANON ) |
0
, /* maximum */
MASK_ENTRY( RLIMIT_RSS ) |
MASK_ENTRY( RLIMIT_LOCKS ) |
MASK_ENTRY( RLIMIT_MSGQUEUE ) |
- MASK_ENTRY( VLIMIT_NSOCK ) |
- MASK_ENTRY( VLIMIT_OPENFD ) |
MASK_ENTRY( VLIMIT_ANON ) |
MASK_ENTRY( VLIMIT_SHMEM ) |
0
#include <linux/vmalloc.h>
#include <linux/mempolicy.h>
#include <linux/stop_machine.h>
-#include <linux/vs_limit.h>
#include <asm/tlbflush.h>
#include <asm/div64.h>