1. 15 Mar, 2011 33 commits
  2. 09 Mar, 2011 5 commits
  3. 08 Mar, 2011 2 commits
    • Ohad Ben-Cohen's avatar
      mmc: fix CONFIG_MMC_UNSAFE_RESUME regression · bad3baba
      Ohad Ben-Cohen authored
      30201e7f ("mmc: skip detection of nonremovable cards on rescan")
      allowed skipping detection of nonremovable cards on mmc_rescan().
      The intention was to only skip detection of hardwired cards that
      cannot be removed, so make sure this is indeed the case by directly
      checking for (lack of) MMC_CAP_NONREMOVABLE, instead of using
      mmc_card_is_removable(), which is overloaded with
      CONFIG_MMC_UNSAFE_RESUME semantics.
      
      The user-visible symptom of the bug this patch fixes is that no
      "mmc: card XXXX removed" message appears in dmesg when a card is
      removed and CONFIG_MMC_UNSAFE_RESUME=y.
      Reported-and-tested-by: default avatarDmitry Shmidt <dimitrysh@google.com>
      Reported-and-tested-by: default avatarMaxim Levitsky <maximlevitsky@gmail.com>
      Signed-off-by: default avatarOhad Ben-Cohen <ohad@wizery.com>
      Signed-off-by: default avatarChris Ball <cjb@laptop.org>
      bad3baba
    • Al Viro's avatar
      unfuck proc_sysctl ->d_compare() · dfef6dcd
      Al Viro authored
      a) struct inode is not going to be freed under ->d_compare();
      however, the thing PROC_I(inode)->sysctl points to just might.
      Fortunately, it's enough to make freeing that sucker delayed,
      provided that we don't step on its ->unregistering, clear
      the pointer to it in PROC_I(inode) before dropping the reference
      and check if it's NULL in ->d_compare().
      
      b) I'm not sure that we *can* walk into NULL inode here (we recheck
      dentry->seq between verifying that it's still hashed / fetching
      dentry->d_inode and passing it to ->d_compare() and there's no
      negative hashed dentries in /proc/sys/*), but if we can walk into
      that, we really should not have ->d_compare() return 0 on it!
      Said that, I really suspect that this check can be simply killed.
      Nick?
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      dfef6dcd