Commit df87f8c0 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6:
  alpha: Fixup last users of irq_chip->typename
  Alpha: Rearrange thread info flags fixing two regressions
  arch/alpha/kernel: Add kmalloc NULL tests
  arch/alpha/kernel/sys_ruffian.c: Use DIV_ROUND_CLOSEST
parents 3350b2ac 8ab1221c
...@@ -61,21 +61,24 @@ register struct thread_info *__current_thread_info __asm__("$8"); ...@@ -61,21 +61,24 @@ register struct thread_info *__current_thread_info __asm__("$8");
/* /*
* Thread information flags: * Thread information flags:
* - these are process state flags and used from assembly * - these are process state flags and used from assembly
* - pending work-to-be-done flags come first to fit in and immediate operand. * - pending work-to-be-done flags come first and must be assigned to be
* within bits 0 to 7 to fit in and immediate operand.
* - ALPHA_UAC_SHIFT below must be kept consistent with the unaligned
* control flags.
* *
* TIF_SYSCALL_TRACE is known to be 0 via blbs. * TIF_SYSCALL_TRACE is known to be 0 via blbs.
*/ */
#define TIF_SYSCALL_TRACE 0 /* syscall trace active */ #define TIF_SYSCALL_TRACE 0 /* syscall trace active */
#define TIF_SIGPENDING 1 /* signal pending */ #define TIF_NOTIFY_RESUME 1 /* callback before returning to user */
#define TIF_NEED_RESCHED 2 /* rescheduling necessary */ #define TIF_SIGPENDING 2 /* signal pending */
#define TIF_POLLING_NRFLAG 3 /* poll_idle is polling NEED_RESCHED */ #define TIF_NEED_RESCHED 3 /* rescheduling necessary */
#define TIF_DIE_IF_KERNEL 4 /* dik recursion lock */ #define TIF_POLLING_NRFLAG 8 /* poll_idle is polling NEED_RESCHED */
#define TIF_UAC_NOPRINT 5 /* see sysinfo.h */ #define TIF_DIE_IF_KERNEL 9 /* dik recursion lock */
#define TIF_UAC_NOFIX 6 #define TIF_UAC_NOPRINT 10 /* see sysinfo.h */
#define TIF_UAC_SIGBUS 7 #define TIF_UAC_NOFIX 11
#define TIF_MEMDIE 8 #define TIF_UAC_SIGBUS 12
#define TIF_RESTORE_SIGMASK 9 /* restore signal mask in do_signal */ #define TIF_MEMDIE 13
#define TIF_NOTIFY_RESUME 10 /* callback before returning to user */ #define TIF_RESTORE_SIGMASK 14 /* restore signal mask in do_signal */
#define TIF_FREEZE 16 /* is freezing for suspend */ #define TIF_FREEZE 16 /* is freezing for suspend */
#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
...@@ -94,7 +97,7 @@ register struct thread_info *__current_thread_info __asm__("$8"); ...@@ -94,7 +97,7 @@ register struct thread_info *__current_thread_info __asm__("$8");
#define _TIF_ALLWORK_MASK (_TIF_WORK_MASK \ #define _TIF_ALLWORK_MASK (_TIF_WORK_MASK \
| _TIF_SYSCALL_TRACE) | _TIF_SYSCALL_TRACE)
#define ALPHA_UAC_SHIFT 6 #define ALPHA_UAC_SHIFT 10
#define ALPHA_UAC_MASK (1 << TIF_UAC_NOPRINT | 1 << TIF_UAC_NOFIX | \ #define ALPHA_UAC_MASK (1 << TIF_UAC_NOPRINT | 1 << TIF_UAC_NOFIX | \
1 << TIF_UAC_SIGBUS) 1 << TIF_UAC_SIGBUS)
......
...@@ -1103,6 +1103,8 @@ marvel_agp_info(void) ...@@ -1103,6 +1103,8 @@ marvel_agp_info(void)
* Allocate the info structure. * Allocate the info structure.
*/ */
agp = kmalloc(sizeof(*agp), GFP_KERNEL); agp = kmalloc(sizeof(*agp), GFP_KERNEL);
if (!agp)
return NULL;
/* /*
* Fill it in. * Fill it in.
......
...@@ -757,6 +757,8 @@ titan_agp_info(void) ...@@ -757,6 +757,8 @@ titan_agp_info(void)
* Allocate the info structure. * Allocate the info structure.
*/ */
agp = kmalloc(sizeof(*agp), GFP_KERNEL); agp = kmalloc(sizeof(*agp), GFP_KERNEL);
if (!agp)
return NULL;
/* /*
* Fill it in. * Fill it in.
......
...@@ -92,7 +92,7 @@ show_interrupts(struct seq_file *p, void *v) ...@@ -92,7 +92,7 @@ show_interrupts(struct seq_file *p, void *v)
for_each_online_cpu(j) for_each_online_cpu(j)
seq_printf(p, "%10u ", kstat_irqs_cpu(irq, j)); seq_printf(p, "%10u ", kstat_irqs_cpu(irq, j));
#endif #endif
seq_printf(p, " %14s", irq_desc[irq].chip->typename); seq_printf(p, " %14s", irq_desc[irq].chip->name);
seq_printf(p, " %c%s", seq_printf(p, " %c%s",
(action->flags & IRQF_DISABLED)?'+':' ', (action->flags & IRQF_DISABLED)?'+':' ',
action->name); action->name);
......
...@@ -228,7 +228,7 @@ struct irqaction timer_irqaction = { ...@@ -228,7 +228,7 @@ struct irqaction timer_irqaction = {
}; };
static struct irq_chip rtc_irq_type = { static struct irq_chip rtc_irq_type = {
.typename = "RTC", .name = "RTC",
.startup = rtc_startup, .startup = rtc_startup,
.shutdown = rtc_enable_disable, .shutdown = rtc_enable_disable,
.enable = rtc_enable_disable, .enable = rtc_enable_disable,
......
...@@ -84,7 +84,7 @@ i8259a_end_irq(unsigned int irq) ...@@ -84,7 +84,7 @@ i8259a_end_irq(unsigned int irq)
} }
struct irq_chip i8259a_irq_type = { struct irq_chip i8259a_irq_type = {
.typename = "XT-PIC", .name = "XT-PIC",
.startup = i8259a_startup_irq, .startup = i8259a_startup_irq,
.shutdown = i8259a_disable_irq, .shutdown = i8259a_disable_irq,
.enable = i8259a_enable_irq, .enable = i8259a_enable_irq,
......
...@@ -71,7 +71,7 @@ pyxis_mask_and_ack_irq(unsigned int irq) ...@@ -71,7 +71,7 @@ pyxis_mask_and_ack_irq(unsigned int irq)
} }
static struct irq_chip pyxis_irq_type = { static struct irq_chip pyxis_irq_type = {
.typename = "PYXIS", .name = "PYXIS",
.startup = pyxis_startup_irq, .startup = pyxis_startup_irq,
.shutdown = pyxis_disable_irq, .shutdown = pyxis_disable_irq,
.enable = pyxis_enable_irq, .enable = pyxis_enable_irq,
......
...@@ -49,7 +49,7 @@ srm_end_irq(unsigned int irq) ...@@ -49,7 +49,7 @@ srm_end_irq(unsigned int irq)
/* Handle interrupts from the SRM, assuming no additional weirdness. */ /* Handle interrupts from the SRM, assuming no additional weirdness. */
static struct irq_chip srm_irq_type = { static struct irq_chip srm_irq_type = {
.typename = "SRM", .name = "SRM",
.startup = srm_startup_irq, .startup = srm_startup_irq,
.shutdown = srm_disable_irq, .shutdown = srm_disable_irq,
.enable = srm_enable_irq, .enable = srm_enable_irq,
......
...@@ -90,7 +90,7 @@ alcor_end_irq(unsigned int irq) ...@@ -90,7 +90,7 @@ alcor_end_irq(unsigned int irq)
} }
static struct irq_chip alcor_irq_type = { static struct irq_chip alcor_irq_type = {
.typename = "ALCOR", .name = "ALCOR",
.startup = alcor_startup_irq, .startup = alcor_startup_irq,
.shutdown = alcor_disable_irq, .shutdown = alcor_disable_irq,
.enable = alcor_enable_irq, .enable = alcor_enable_irq,
......
...@@ -72,7 +72,7 @@ cabriolet_end_irq(unsigned int irq) ...@@ -72,7 +72,7 @@ cabriolet_end_irq(unsigned int irq)
} }
static struct irq_chip cabriolet_irq_type = { static struct irq_chip cabriolet_irq_type = {
.typename = "CABRIOLET", .name = "CABRIOLET",
.startup = cabriolet_startup_irq, .startup = cabriolet_startup_irq,
.shutdown = cabriolet_disable_irq, .shutdown = cabriolet_disable_irq,
.enable = cabriolet_enable_irq, .enable = cabriolet_enable_irq,
......
...@@ -199,7 +199,7 @@ clipper_set_affinity(unsigned int irq, const struct cpumask *affinity) ...@@ -199,7 +199,7 @@ clipper_set_affinity(unsigned int irq, const struct cpumask *affinity)
} }
static struct irq_chip dp264_irq_type = { static struct irq_chip dp264_irq_type = {
.typename = "DP264", .name = "DP264",
.startup = dp264_startup_irq, .startup = dp264_startup_irq,
.shutdown = dp264_disable_irq, .shutdown = dp264_disable_irq,
.enable = dp264_enable_irq, .enable = dp264_enable_irq,
...@@ -210,7 +210,7 @@ static struct irq_chip dp264_irq_type = { ...@@ -210,7 +210,7 @@ static struct irq_chip dp264_irq_type = {
}; };
static struct irq_chip clipper_irq_type = { static struct irq_chip clipper_irq_type = {
.typename = "CLIPPER", .name = "CLIPPER",
.startup = clipper_startup_irq, .startup = clipper_startup_irq,
.shutdown = clipper_disable_irq, .shutdown = clipper_disable_irq,
.enable = clipper_enable_irq, .enable = clipper_enable_irq,
......
...@@ -70,7 +70,7 @@ eb64p_end_irq(unsigned int irq) ...@@ -70,7 +70,7 @@ eb64p_end_irq(unsigned int irq)
} }
static struct irq_chip eb64p_irq_type = { static struct irq_chip eb64p_irq_type = {
.typename = "EB64P", .name = "EB64P",
.startup = eb64p_startup_irq, .startup = eb64p_startup_irq,
.shutdown = eb64p_disable_irq, .shutdown = eb64p_disable_irq,
.enable = eb64p_enable_irq, .enable = eb64p_enable_irq,
......
...@@ -81,7 +81,7 @@ eiger_end_irq(unsigned int irq) ...@@ -81,7 +81,7 @@ eiger_end_irq(unsigned int irq)
} }
static struct irq_chip eiger_irq_type = { static struct irq_chip eiger_irq_type = {
.typename = "EIGER", .name = "EIGER",
.startup = eiger_startup_irq, .startup = eiger_startup_irq,
.shutdown = eiger_disable_irq, .shutdown = eiger_disable_irq,
.enable = eiger_enable_irq, .enable = eiger_enable_irq,
......
...@@ -119,7 +119,7 @@ jensen_local_end(unsigned int irq) ...@@ -119,7 +119,7 @@ jensen_local_end(unsigned int irq)
} }
static struct irq_chip jensen_local_irq_type = { static struct irq_chip jensen_local_irq_type = {
.typename = "LOCAL", .name = "LOCAL",
.startup = jensen_local_startup, .startup = jensen_local_startup,
.shutdown = jensen_local_shutdown, .shutdown = jensen_local_shutdown,
.enable = jensen_local_enable, .enable = jensen_local_enable,
......
...@@ -170,7 +170,7 @@ marvel_irq_noop_return(unsigned int irq) ...@@ -170,7 +170,7 @@ marvel_irq_noop_return(unsigned int irq)
} }
static struct irq_chip marvel_legacy_irq_type = { static struct irq_chip marvel_legacy_irq_type = {
.typename = "LEGACY", .name = "LEGACY",
.startup = marvel_irq_noop_return, .startup = marvel_irq_noop_return,
.shutdown = marvel_irq_noop, .shutdown = marvel_irq_noop,
.enable = marvel_irq_noop, .enable = marvel_irq_noop,
...@@ -180,7 +180,7 @@ static struct irq_chip marvel_legacy_irq_type = { ...@@ -180,7 +180,7 @@ static struct irq_chip marvel_legacy_irq_type = {
}; };
static struct irq_chip io7_lsi_irq_type = { static struct irq_chip io7_lsi_irq_type = {
.typename = "LSI", .name = "LSI",
.startup = io7_startup_irq, .startup = io7_startup_irq,
.shutdown = io7_disable_irq, .shutdown = io7_disable_irq,
.enable = io7_enable_irq, .enable = io7_enable_irq,
...@@ -190,7 +190,7 @@ static struct irq_chip io7_lsi_irq_type = { ...@@ -190,7 +190,7 @@ static struct irq_chip io7_lsi_irq_type = {
}; };
static struct irq_chip io7_msi_irq_type = { static struct irq_chip io7_msi_irq_type = {
.typename = "MSI", .name = "MSI",
.startup = io7_startup_irq, .startup = io7_startup_irq,
.shutdown = io7_disable_irq, .shutdown = io7_disable_irq,
.enable = io7_enable_irq, .enable = io7_enable_irq,
......
...@@ -69,7 +69,7 @@ mikasa_end_irq(unsigned int irq) ...@@ -69,7 +69,7 @@ mikasa_end_irq(unsigned int irq)
} }
static struct irq_chip mikasa_irq_type = { static struct irq_chip mikasa_irq_type = {
.typename = "MIKASA", .name = "MIKASA",
.startup = mikasa_startup_irq, .startup = mikasa_startup_irq,
.shutdown = mikasa_disable_irq, .shutdown = mikasa_disable_irq,
.enable = mikasa_enable_irq, .enable = mikasa_enable_irq,
......
...@@ -74,7 +74,7 @@ noritake_end_irq(unsigned int irq) ...@@ -74,7 +74,7 @@ noritake_end_irq(unsigned int irq)
} }
static struct irq_chip noritake_irq_type = { static struct irq_chip noritake_irq_type = {
.typename = "NORITAKE", .name = "NORITAKE",
.startup = noritake_startup_irq, .startup = noritake_startup_irq,
.shutdown = noritake_disable_irq, .shutdown = noritake_disable_irq,
.enable = noritake_enable_irq, .enable = noritake_enable_irq,
......
...@@ -136,7 +136,7 @@ rawhide_end_irq(unsigned int irq) ...@@ -136,7 +136,7 @@ rawhide_end_irq(unsigned int irq)
} }
static struct irq_chip rawhide_irq_type = { static struct irq_chip rawhide_irq_type = {
.typename = "RAWHIDE", .name = "RAWHIDE",
.startup = rawhide_startup_irq, .startup = rawhide_startup_irq,
.shutdown = rawhide_disable_irq, .shutdown = rawhide_disable_irq,
.enable = rawhide_enable_irq, .enable = rawhide_enable_irq,
......
...@@ -66,7 +66,7 @@ ruffian_init_irq(void) ...@@ -66,7 +66,7 @@ ruffian_init_irq(void)
common_init_isa_dma(); common_init_isa_dma();
} }
#define RUFFIAN_LATCH ((PIT_TICK_RATE + HZ / 2) / HZ) #define RUFFIAN_LATCH DIV_ROUND_CLOSEST(PIT_TICK_RATE, HZ)
static void __init static void __init
ruffian_init_rtc(void) ruffian_init_rtc(void)
......
...@@ -73,7 +73,7 @@ rx164_end_irq(unsigned int irq) ...@@ -73,7 +73,7 @@ rx164_end_irq(unsigned int irq)
} }
static struct irq_chip rx164_irq_type = { static struct irq_chip rx164_irq_type = {
.typename = "RX164", .name = "RX164",
.startup = rx164_startup_irq, .startup = rx164_startup_irq,
.shutdown = rx164_disable_irq, .shutdown = rx164_disable_irq,
.enable = rx164_enable_irq, .enable = rx164_enable_irq,
......
...@@ -502,7 +502,7 @@ sable_lynx_mask_and_ack_irq(unsigned int irq) ...@@ -502,7 +502,7 @@ sable_lynx_mask_and_ack_irq(unsigned int irq)
} }
static struct irq_chip sable_lynx_irq_type = { static struct irq_chip sable_lynx_irq_type = {
.typename = "SABLE/LYNX", .name = "SABLE/LYNX",
.startup = sable_lynx_startup_irq, .startup = sable_lynx_startup_irq,
.shutdown = sable_lynx_disable_irq, .shutdown = sable_lynx_disable_irq,
.enable = sable_lynx_enable_irq, .enable = sable_lynx_enable_irq,
......
...@@ -75,7 +75,7 @@ takara_end_irq(unsigned int irq) ...@@ -75,7 +75,7 @@ takara_end_irq(unsigned int irq)
} }
static struct irq_chip takara_irq_type = { static struct irq_chip takara_irq_type = {
.typename = "TAKARA", .name = "TAKARA",
.startup = takara_startup_irq, .startup = takara_startup_irq,
.shutdown = takara_disable_irq, .shutdown = takara_disable_irq,
.enable = takara_enable_irq, .enable = takara_enable_irq,
......
...@@ -195,7 +195,7 @@ init_titan_irqs(struct irq_chip * ops, int imin, int imax) ...@@ -195,7 +195,7 @@ init_titan_irqs(struct irq_chip * ops, int imin, int imax)
} }
static struct irq_chip titan_irq_type = { static struct irq_chip titan_irq_type = {
.typename = "TITAN", .name = "TITAN",
.startup = titan_startup_irq, .startup = titan_startup_irq,
.shutdown = titan_disable_irq, .shutdown = titan_disable_irq,
.enable = titan_enable_irq, .enable = titan_enable_irq,
......
...@@ -158,7 +158,7 @@ wildfire_end_irq(unsigned int irq) ...@@ -158,7 +158,7 @@ wildfire_end_irq(unsigned int irq)
} }
static struct irq_chip wildfire_irq_type = { static struct irq_chip wildfire_irq_type = {
.typename = "WILDFIRE", .name = "WILDFIRE",
.startup = wildfire_startup_irq, .startup = wildfire_startup_irq,
.shutdown = wildfire_disable_irq, .shutdown = wildfire_disable_irq,
.enable = wildfire_enable_irq, .enable = wildfire_enable_irq,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment