Skip to content

Commit

Permalink
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Browse files Browse the repository at this point in the history
Signed-off-by: Steve French <sfrench@us.ibm.com>
  • Loading branch information
Steve French committed Mar 7, 2006
2 parents beb84dc + d0b0048 commit f6e77c9
Show file tree
Hide file tree
Showing 59 changed files with 430 additions and 239 deletions.
10 changes: 6 additions & 4 deletions arch/arm/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -422,12 +422,14 @@ static int timer_dyn_tick_disable(void)
void timer_dyn_reprogram(void)
{
struct dyn_tick_timer *dyn_tick = system_timer->dyn_tick;
unsigned long next, seq;

if (dyn_tick) {
write_seqlock(&xtime_lock);
if (dyn_tick->state & DYN_TICK_ENABLED)
if (dyn_tick && (dyn_tick->state & DYN_TICK_ENABLED)) {
next = next_timer_interrupt();
do {
seq = read_seqbegin(&xtime_lock);
dyn_tick->reprogram(next_timer_interrupt() - jiffies);
write_sequnlock(&xtime_lock);
} while (read_seqretry(&xtime_lock, seq));
}
}

Expand Down
3 changes: 3 additions & 0 deletions arch/h8300/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@
#include <asm/setup.h>
#include <asm/pgtable.h>

void (*pm_power_off)(void) = NULL;
EXPORT_SYMBOL(pm_power_off);

asmlinkage void ret_from_fork(void);

/*
Expand Down
14 changes: 8 additions & 6 deletions arch/i386/kernel/efi.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,13 @@ static void efi_call_phys_prelog(void)
{
unsigned long cr4;
unsigned long temp;
struct Xgt_desc_struct *cpu_gdt_descr;

spin_lock(&efi_rt_lock);
local_irq_save(efi_rt_eflags);

cpu_gdt_descr = &per_cpu(cpu_gdt_descr, 0);

/*
* If I don't have PSE, I should just duplicate two entries in page
* directory. If I have PSE, I just need to duplicate one entry in
Expand Down Expand Up @@ -103,18 +106,17 @@ static void efi_call_phys_prelog(void)
*/
local_flush_tlb();

per_cpu(cpu_gdt_descr, 0).address =
__pa(per_cpu(cpu_gdt_descr, 0).address);
load_gdt((struct Xgt_desc_struct *)__pa(&per_cpu(cpu_gdt_descr, 0)));
cpu_gdt_descr->address = __pa(cpu_gdt_descr->address);
load_gdt(cpu_gdt_descr);
}

static void efi_call_phys_epilog(void)
{
unsigned long cr4;
struct Xgt_desc_struct *cpu_gdt_descr = &per_cpu(cpu_gdt_descr, 0);

per_cpu(cpu_gdt_descr, 0).address =
(unsigned long)__va(per_cpu(cpu_gdt_descr, 0).address);
load_gdt((struct Xgt_desc_struct *)__va(&per_cpu(cpu_gdt_descr, 0)));
cpu_gdt_descr->address = __va(cpu_gdt_descr->address);
load_gdt(cpu_gdt_descr);

cr4 = read_cr4();

Expand Down
4 changes: 2 additions & 2 deletions arch/i386/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -412,9 +412,9 @@ static int timer_resume(struct sys_device *dev)
write_seqlock_irqsave(&xtime_lock, flags);
xtime.tv_sec = sec;
xtime.tv_nsec = 0;
write_sequnlock_irqrestore(&xtime_lock, flags);
jiffies += sleep_length;
jiffies_64 += sleep_length;
wall_jiffies += sleep_length;
write_sequnlock_irqrestore(&xtime_lock, flags);
if (last_timer->resume)
last_timer->resume();
cur_timer = last_timer;
Expand Down
3 changes: 3 additions & 0 deletions arch/powerpc/kernel/head_64.S
Original file line number Diff line number Diff line change
Expand Up @@ -1537,6 +1537,9 @@ _STATIC(__boot_from_prom)
mr r28,r6
mr r27,r7

/* Align the stack to 16-byte boundary for broken yaboot */
rldicr r1,r1,0,59

/* Make sure we are running in 64 bits mode */
bl .enable_64b_mode

Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/kernel/sys32.S
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ do_sys_recvmsg: /* compat_sys_recvmsg(int, struct compat_msghdr *, unsigned int)
nop
nop

.section __ex_table
.section __ex_table,"a"
.align 4
.word 1b, __retl_efault, 2b, __retl_efault
.word 3b, __retl_efault, 4b, __retl_efault
Expand Down
4 changes: 2 additions & 2 deletions arch/sparc64/kernel/una_asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ __do_int_store:
mov 0, %o0
.size __do_int_store, .-__do_int_store

.section __ex_table
.section __ex_table,"a"
.word 4b, __retl_efault
.word 5b, __retl_efault
.word 6b, __retl_efault
Expand Down Expand Up @@ -129,7 +129,7 @@ do_int_load:
mov 0, %o0
.size __do_int_load, .-__do_int_load

.section __ex_table
.section __ex_table,"a"
.word 4b, __retl_efault
.word 5b, __retl_efault
.word 6b, __retl_efault
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/U1copy_from_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov 1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/U1copy_to_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov 1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/U3copy_from_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov 1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/U3copy_to_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov 1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/bzero.S
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ __bzero_done:
.align 4; \
99: retl; \
mov %o1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/copy_in_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
.align 4; \
99: retl; \
mov 1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/csum_copy_from_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov -1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/csum_copy_to_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
.align 4; \
99: retl; \
mov -1, %o0; \
.section __ex_table; \
.section __ex_table,"a";\
.align 4; \
.word 98b, 99b; \
.text; \
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/strlen_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ __strnlen_user:
retl
clr %o0

.section __ex_table,#alloc
.section __ex_table,"a"
.align 4

.word 10b, 30b
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/lib/strncpy_from_user.S
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ __strncpy_from_user:
add %o2, %o3, %o0
.size __strncpy_from_user, .-__strncpy_from_user

.section __ex_table,#alloc
.section __ex_table,"a"
.align 4
.word 60b, __retl_efault
.word 61b, __retl_efault
Expand Down
2 changes: 1 addition & 1 deletion arch/sparc64/solaris/entry64.S
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ solaris_unimplemented:
ba,pt %xcc, ret_from_solaris
nop

.section __ex_table,#alloc
.section __ex_table,"a"
.align 4
.word exen, exenf

3 changes: 3 additions & 0 deletions arch/v850/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,9 @@
#include <asm/system.h>
#include <asm/pgtable.h>

void (*pm_power_off)(void) = NULL;
EXPORT_SYMBOL(pm_power_off);

extern void ret_from_fork (void);


Expand Down
3 changes: 3 additions & 0 deletions arch/xtensa/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@ EXPORT_SYMBOL(init_task);

struct task_struct *current_set[NR_CPUS] = {&init_task, };

void (*pm_power_off)(void) = NULL;
EXPORT_SYMBOL(pm_power_off);


#if XCHAL_CP_NUM > 0

Expand Down
36 changes: 18 additions & 18 deletions drivers/atm/fore200e.c
Original file line number Diff line number Diff line change
Expand Up @@ -555,7 +555,7 @@ fore200e_pca_reset(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_pca_map(struct fore200e* fore200e)
{
DPRINTK(2, "device %s being mapped in memory\n", fore200e->name);
Expand Down Expand Up @@ -589,7 +589,7 @@ fore200e_pca_unmap(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_pca_configure(struct fore200e* fore200e)
{
struct pci_dev* pci_dev = (struct pci_dev*)fore200e->bus_dev;
Expand Down Expand Up @@ -2125,7 +2125,7 @@ fore200e_change_qos(struct atm_vcc* vcc,struct atm_qos* qos, int flags)
}


static int __init
static int __devinit
fore200e_irq_request(struct fore200e* fore200e)
{
if (request_irq(fore200e->irq, fore200e_interrupt, SA_SHIRQ, fore200e->name, fore200e->atm_dev) < 0) {
Expand All @@ -2148,7 +2148,7 @@ fore200e_irq_request(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_get_esi(struct fore200e* fore200e)
{
struct prom_data* prom = fore200e_kmalloc(sizeof(struct prom_data), GFP_KERNEL | GFP_DMA);
Expand Down Expand Up @@ -2180,7 +2180,7 @@ fore200e_get_esi(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_alloc_rx_buf(struct fore200e* fore200e)
{
int scheme, magn, nbr, size, i;
Expand Down Expand Up @@ -2245,7 +2245,7 @@ fore200e_alloc_rx_buf(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_init_bs_queue(struct fore200e* fore200e)
{
int scheme, magn, i;
Expand Down Expand Up @@ -2308,7 +2308,7 @@ fore200e_init_bs_queue(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_init_rx_queue(struct fore200e* fore200e)
{
struct host_rxq* rxq = &fore200e->host_rxq;
Expand Down Expand Up @@ -2368,7 +2368,7 @@ fore200e_init_rx_queue(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_init_tx_queue(struct fore200e* fore200e)
{
struct host_txq* txq = &fore200e->host_txq;
Expand Down Expand Up @@ -2431,7 +2431,7 @@ fore200e_init_tx_queue(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_init_cmd_queue(struct fore200e* fore200e)
{
struct host_cmdq* cmdq = &fore200e->host_cmdq;
Expand Down Expand Up @@ -2487,7 +2487,7 @@ fore200e_param_bs_queue(struct fore200e* fore200e,
}


static int __init
static int __devinit
fore200e_initialize(struct fore200e* fore200e)
{
struct cp_queues __iomem * cpq;
Expand Down Expand Up @@ -2539,7 +2539,7 @@ fore200e_initialize(struct fore200e* fore200e)
}


static void __init
static void __devinit
fore200e_monitor_putc(struct fore200e* fore200e, char c)
{
struct cp_monitor __iomem * monitor = fore200e->cp_monitor;
Expand All @@ -2551,7 +2551,7 @@ fore200e_monitor_putc(struct fore200e* fore200e, char c)
}


static int __init
static int __devinit
fore200e_monitor_getc(struct fore200e* fore200e)
{
struct cp_monitor __iomem * monitor = fore200e->cp_monitor;
Expand All @@ -2576,7 +2576,7 @@ fore200e_monitor_getc(struct fore200e* fore200e)
}


static void __init
static void __devinit
fore200e_monitor_puts(struct fore200e* fore200e, char* str)
{
while (*str) {
Expand All @@ -2591,7 +2591,7 @@ fore200e_monitor_puts(struct fore200e* fore200e, char* str)
}


static int __init
static int __devinit
fore200e_start_fw(struct fore200e* fore200e)
{
int ok;
Expand Down Expand Up @@ -2622,7 +2622,7 @@ fore200e_start_fw(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_load_fw(struct fore200e* fore200e)
{
u32* fw_data = (u32*) fore200e->bus->fw_data;
Expand All @@ -2648,7 +2648,7 @@ fore200e_load_fw(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_register(struct fore200e* fore200e)
{
struct atm_dev* atm_dev;
Expand All @@ -2675,7 +2675,7 @@ fore200e_register(struct fore200e* fore200e)
}


static int __init
static int __devinit
fore200e_init(struct fore200e* fore200e)
{
if (fore200e_register(fore200e) < 0)
Expand Down Expand Up @@ -2721,7 +2721,7 @@ fore200e_init(struct fore200e* fore200e)
return -EBUSY;

fore200e_supply(fore200e);

/* all done, board initialization is now complete */
fore200e->state = FORE200E_STATE_COMPLETE;
return 0;
Expand Down
Loading

0 comments on commit f6e77c9

Please sign in to comment.