Pastebin launched a little side project called HostCabi.net, check it out ;-)Don't like ads? PRO users don't see any ads ;-)
Guest

aoe6-77-kv3-alyseo

By: a guest on Nov 7th, 2011  |  syntax: Diff  |  size: 1.14 KB  |  hits: 47  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
This paste has a previous version, view the difference. Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. root@furax # diff -upr a/linux/drivers/block/aoe/aoechr.c b/linux/drivers/block/aoe/aoechr.c
  2. --- a/linux/drivers/block/aoe/aoechr.c  2011-11-07 16:29:39.000000000 +0100
  3. +++ b/linux/drivers/block/aoe/aoechr.c  2011-11-07 16:29:39.000000000 +0100
  4. @@ -8,8 +8,8 @@
  5.  #include <linux/blkdev.h>
  6.  #include <linux/init.h>
  7.  #include <linux/delay.h>
  8. -#include <linux/smp_lock.h>
  9.  #include <linux/slab.h>
  10. +#include <linux/mutex.h>
  11.  #include "aoe.h"
  12.  
  13.  enum {
  14. @@ -36,6 +36,8 @@ struct ErrMsg {
  15.         char *msg;
  16.  };
  17.  
  18. +static DEFINE_MUTEX(aoechr_mutex);
  19. +
  20.  /* A ring buffer of error messages, to be read through
  21.   * "/dev/etherd/err".  When no messages are present,
  22.   * readers will block waiting for messages to appear.
  23. @@ -182,16 +184,16 @@ aoechr_open(struct inode *inode, struct
  24.  {
  25.         int n, i;
  26.  
  27. -       lock_kernel();
  28. +       mutex_lock(&aoechr_mutex);
  29.         n = MINOR(inode->i_rdev);
  30.         filp->private_data = (void *) (unsigned long) n;
  31.  
  32.         for (i = 0; i < ARRAY_SIZE(chardevs); ++i)
  33.                 if (chardevs[i].minor == n) {
  34. -                       unlock_kernel();
  35. +                       mutex_unlock(&aoechr_mutex);
  36.                         return 0;
  37.                 }
  38. -       unlock_kernel();
  39. +       mutex_unlock(&aoechr_mutex);
  40.         return -EINVAL;
  41.  }
  42.  
  43.  
  44.