]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - mm/swapfile.c
[PARISC] Fix IOREMAP with a 64-bit kernel
[karo-tx-linux.git] / mm / swapfile.c
index 4d11f9d84666fbc0186f18729f52eb830496bcdb..39aa9d12961207ba7c537ed73da2eab54ea98dd9 100644 (file)
@@ -428,14 +428,16 @@ int swap_type_of(dev_t device)
 {
        int i;
 
-       if (!device)
-               return -EINVAL;
        spin_lock(&swap_lock);
        for (i = 0; i < nr_swapfiles; i++) {
                struct inode *inode;
 
                if (!(swap_info[i].flags & SWP_WRITEOK))
                        continue;
+               if (!device) {
+                       spin_unlock(&swap_lock);
+                       return i;
+               }
                inode = swap_info->swap_file->f_dentry->d_inode;
                if (S_ISBLK(inode->i_mode) &&
                    device == MKDEV(imajor(inode), iminor(inode))) {