Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 47603
b: refs/heads/master
c: cefc8be
h: refs/heads/master
i:
  47601: 97130cc
  47599: 6f28ae7
v: v3
  • Loading branch information
Kirill Korotaev authored and Linus Torvalds committed Feb 11, 2007
1 parent ad4554b commit e36aa4c
Show file tree
Hide file tree
Showing 9 changed files with 6 additions and 136 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c530cba649692512070e8c0131ba3eccade09269
refs/heads/master: cefc8be82403cfc4325e7b9b063f77dc0f34e19e
26 changes: 0 additions & 26 deletions trunk/arch/i386/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,32 +59,6 @@ static inline int notify_page_fault(enum die_val val, const char *str,
return atomic_notifier_call_chain(&notify_page_fault_chain, val, &args);
}

/*
* Unlock any spinlocks which will prevent us from getting the
* message out
*/
void bust_spinlocks(int yes)
{
int loglevel_save = console_loglevel;

if (yes) {
oops_in_progress = 1;
return;
}
#ifdef CONFIG_VT
unblank_screen();
#endif
oops_in_progress = 0;
/*
* OK, the message is on the console. Now we call printk()
* without oops_in_progress set so that printk will give klogd
* a poke. Hold onto your hats...
*/
console_loglevel = 15; /* NMI oopser may have shut the console up */
printk(" ");
console_loglevel = loglevel_save;
}

/*
* Return EIP plus the CS segment base. The segment limit is also
* adjusted, clamped to the kernel/user address space (whichever is
Expand Down
30 changes: 0 additions & 30 deletions trunk/arch/ia64/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@
#include <asm/uaccess.h>
#include <asm/kdebug.h>

extern spinlock_t timerlist_lock;

fpswa_interface_t *fpswa_interface;
EXPORT_SYMBOL(fpswa_interface);

Expand Down Expand Up @@ -53,34 +51,6 @@ trap_init (void)
fpswa_interface = __va(ia64_boot_param->fpswa);
}

/*
* Unlock any spinlocks which will prevent us from getting the message out (timerlist_lock
* is acquired through the console unblank code)
*/
void
bust_spinlocks (int yes)
{
int loglevel_save = console_loglevel;

if (yes) {
oops_in_progress = 1;
return;
}

#ifdef CONFIG_VT
unblank_screen();
#endif
oops_in_progress = 0;
/*
* OK, the message is on the console. Now we call printk() without
* oops_in_progress set so that printk will give klogd a poke. Hold onto
* your hats...
*/
console_loglevel = 15; /* NMI oopser may have shut the console up */
printk(" ");
console_loglevel = loglevel_save;
}

void
die (const char *str, struct pt_regs *regs, long err)
{
Expand Down
26 changes: 0 additions & 26 deletions trunk/arch/m32r/mm/fault-nommu.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,32 +44,6 @@ unsigned int tlb_entry_d_dat[NR_CPUS];
#define tlb_entry_d tlb_entry_d_dat[smp_processor_id()]
#endif

/*
* Unlock any spinlocks which will prevent us from getting the
* message out
*/
void bust_spinlocks(int yes)
{
int loglevel_save = console_loglevel;

if (yes) {
oops_in_progress = 1;
return;
}
#ifdef CONFIG_VT
unblank_screen();
#endif
oops_in_progress = 0;
/*
* OK, the message is on the console. Now we call printk()
* without oops_in_progress set so that printk will give klogd
* a poke. Hold onto your hats...
*/
console_loglevel = 15; /* NMI oopser may have shut the console up */
printk(" ");
console_loglevel = loglevel_save;
}

void do_BUG(const char *file, int line)
{
bust_spinlocks(1);
Expand Down
26 changes: 0 additions & 26 deletions trunk/arch/m32r/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,32 +49,6 @@ unsigned int tlb_entry_d_dat[NR_CPUS];

extern void init_tlb(void);

/*
* Unlock any spinlocks which will prevent us from getting the
* message out
*/
void bust_spinlocks(int yes)
{
int loglevel_save = console_loglevel;

if (yes) {
oops_in_progress = 1;
return;
}
#ifdef CONFIG_VT
unblank_screen();
#endif
oops_in_progress = 0;
/*
* OK, the message is on the console. Now we call printk()
* without oops_in_progress set so that printk will give klogd
* a poke. Hold onto your hats...
*/
console_loglevel = 15; /* NMI oopser may have shut the console up */
printk(" ");
console_loglevel = loglevel_save;
}

/*======================================================================*
* do_page_fault()
*======================================================================*
Expand Down
4 changes: 1 addition & 3 deletions trunk/arch/s390/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,10 @@ static inline int notify_page_fault(enum die_val val, const char *str,
}
#endif

extern spinlock_t timerlist_lock;

/*
* Unlock any spinlocks which will prevent us from getting the
* message out (timerlist_lock is acquired through the
* console unblank code)
* message out.
*/
void bust_spinlocks(int yes)
{
Expand Down
21 changes: 0 additions & 21 deletions trunk/arch/x86_64/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,27 +69,6 @@ static inline int notify_page_fault(enum die_val val, const char *str,
return atomic_notifier_call_chain(&notify_page_fault_chain, val, &args);
}

void bust_spinlocks(int yes)
{
int loglevel_save = console_loglevel;
if (yes) {
oops_in_progress = 1;
} else {
#ifdef CONFIG_VT
unblank_screen();
#endif
oops_in_progress = 0;
/*
* OK, the message is on the console. Now we call printk()
* without oops_in_progress set so that printk will give klogd
* a poke. Hold onto your hats...
*/
console_loglevel = 15; /* NMI oopser may have shut the console up */
printk(" ");
console_loglevel = loglevel_save;
}
}

/* Sometimes the CPU reports invalid exceptions on prefetch.
Check that here and ignore.
Opcode checker based on code by Richard Brunner */
Expand Down
5 changes: 3 additions & 2 deletions trunk/lib/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#

lib-y := ctype.o string.o vsprintf.o cmdline.o \
bust_spinlocks.o rbtree.o radix-tree.o dump_stack.o \
rbtree.o radix-tree.o dump_stack.o \
idr.o div64.o int_sqrt.o bitmap.o extable.o prio_tree.o \
sha1.o irq_regs.o reciprocal_div.o

Expand All @@ -12,7 +12,8 @@ lib-$(CONFIG_SMP) += cpumask.o

lib-y += kobject.o kref.o kobject_uevent.o klist.o

obj-y += sort.o parser.o halfmd4.o debug_locks.o random32.o iomap.o
obj-y += sort.o parser.o halfmd4.o debug_locks.o random32.o iomap.o \
bust_spinlocks.o

ifeq ($(CONFIG_DEBUG_KOBJECT),y)
CFLAGS_kobject.o += -DDEBUG
Expand Down
2 changes: 1 addition & 1 deletion trunk/lib/bust_spinlocks.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#include <linux/vt_kern.h>


void bust_spinlocks(int yes)
void __attribute__((weak)) bust_spinlocks(int yes)
{
if (yes) {
oops_in_progress = 1;
Expand Down

0 comments on commit e36aa4c

Please sign in to comment.