diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/futex.c | 8 | ||||
-rw-r--r-- | kernel/irq/manage.c | 16 |
2 files changed, 14 insertions, 10 deletions
diff --git a/kernel/futex.c b/kernel/futex.c index 6c91f938005d..15caf93e4a43 100644 --- a/kernel/futex.c +++ b/kernel/futex.c | |||
@@ -630,8 +630,10 @@ static int futex_wake(u32 __user *uaddr, int nr_wake) | |||
630 | 630 | ||
631 | list_for_each_entry_safe(this, next, head, list) { | 631 | list_for_each_entry_safe(this, next, head, list) { |
632 | if (match_futex (&this->key, &key)) { | 632 | if (match_futex (&this->key, &key)) { |
633 | if (this->pi_state) | 633 | if (this->pi_state) { |
634 | return -EINVAL; | 634 | ret = -EINVAL; |
635 | break; | ||
636 | } | ||
635 | wake_futex(this); | 637 | wake_futex(this); |
636 | if (++ret >= nr_wake) | 638 | if (++ret >= nr_wake) |
637 | break; | 639 | break; |
@@ -1208,7 +1210,7 @@ static int do_futex_lock_pi(u32 __user *uaddr, int detect, int trylock, | |||
1208 | } | 1210 | } |
1209 | 1211 | ||
1210 | down_read(&curr->mm->mmap_sem); | 1212 | down_read(&curr->mm->mmap_sem); |
1211 | hb = queue_lock(&q, -1, NULL); | 1213 | spin_lock(q.lock_ptr); |
1212 | 1214 | ||
1213 | /* | 1215 | /* |
1214 | * Got the lock. We might not be the anticipated owner if we | 1216 | * Got the lock. We might not be the anticipated owner if we |
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index b7117e81ac56..fcce5181e453 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -114,7 +114,7 @@ void enable_irq(unsigned int irq) | |||
114 | spin_lock_irqsave(&desc->lock, flags); | 114 | spin_lock_irqsave(&desc->lock, flags); |
115 | switch (desc->depth) { | 115 | switch (desc->depth) { |
116 | case 0: | 116 | case 0: |
117 | printk(KERN_WARNING "Unablanced enable_irq(%d)\n", irq); | 117 | printk(KERN_WARNING "Unbalanced enable for IRQ %d\n", irq); |
118 | WARN_ON(1); | 118 | WARN_ON(1); |
119 | break; | 119 | break; |
120 | case 1: { | 120 | case 1: { |
@@ -236,7 +236,8 @@ int setup_irq(unsigned int irq, struct irqaction *new) | |||
236 | 236 | ||
237 | #if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ) | 237 | #if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ) |
238 | /* All handlers must agree on per-cpuness */ | 238 | /* All handlers must agree on per-cpuness */ |
239 | if ((old->flags & IRQ_PER_CPU) != (new->flags & IRQ_PER_CPU)) | 239 | if ((old->flags & SA_PERCPU_IRQ) != |
240 | (new->flags & SA_PERCPU_IRQ)) | ||
240 | goto mismatch; | 241 | goto mismatch; |
241 | #endif | 242 | #endif |
242 | 243 | ||
@@ -266,9 +267,10 @@ int setup_irq(unsigned int irq, struct irqaction *new) | |||
266 | * SA_TRIGGER_* but the PIC does not support | 267 | * SA_TRIGGER_* but the PIC does not support |
267 | * multiple flow-types? | 268 | * multiple flow-types? |
268 | */ | 269 | */ |
269 | printk(KERN_WARNING "setup_irq(%d) SA_TRIGGER" | 270 | printk(KERN_WARNING "No SA_TRIGGER set_type " |
270 | "set. No set_type function available\n", | 271 | "function for IRQ %d (%s)\n", irq, |
271 | irq); | 272 | desc->chip ? desc->chip->name : |
273 | "unknown"); | ||
272 | } else | 274 | } else |
273 | compat_irq_chip_set_default_handler(desc); | 275 | compat_irq_chip_set_default_handler(desc); |
274 | 276 | ||
@@ -298,7 +300,7 @@ int setup_irq(unsigned int irq, struct irqaction *new) | |||
298 | mismatch: | 300 | mismatch: |
299 | spin_unlock_irqrestore(&desc->lock, flags); | 301 | spin_unlock_irqrestore(&desc->lock, flags); |
300 | if (!(new->flags & SA_PROBEIRQ)) { | 302 | if (!(new->flags & SA_PROBEIRQ)) { |
301 | printk(KERN_ERR "%s: irq handler mismatch\n", __FUNCTION__); | 303 | printk(KERN_ERR "IRQ handler type mismatch for IRQ %d\n", irq); |
302 | dump_stack(); | 304 | dump_stack(); |
303 | } | 305 | } |
304 | return -EBUSY; | 306 | return -EBUSY; |
@@ -365,7 +367,7 @@ void free_irq(unsigned int irq, void *dev_id) | |||
365 | kfree(action); | 367 | kfree(action); |
366 | return; | 368 | return; |
367 | } | 369 | } |
368 | printk(KERN_ERR "Trying to free free IRQ%d\n", irq); | 370 | printk(KERN_ERR "Trying to free already-free IRQ %d\n", irq); |
369 | spin_unlock_irqrestore(&desc->lock, flags); | 371 | spin_unlock_irqrestore(&desc->lock, flags); |
370 | return; | 372 | return; |
371 | } | 373 | } |