diff --git a/[refs] b/[refs] index f0fe7fe08671..c557dcb0c864 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f4a68b9388c7f647ba2fd43faf69cad26ca03206 +refs/heads/master: b27256439568950f30864ccecaeb6dfb588089d5 diff --git a/trunk/include/linux/swap.h b/trunk/include/linux/swap.h index 1f59d9340c4d..ec2b7a42b45f 100644 --- a/trunk/include/linux/swap.h +++ b/trunk/include/linux/swap.h @@ -146,6 +146,7 @@ enum { SWP_DISCARDING = (1 << 3), /* now discarding a free cluster */ SWP_SOLIDSTATE = (1 << 4), /* blkdev seeks are cheap */ SWP_CONTINUED = (1 << 5), /* swap_map has count continuation */ + SWP_BLKDEV = (1 << 6), /* its a block device */ /* add others here before... */ SWP_SCANNING = (1 << 8), /* refcount in scan_swap_map */ }; diff --git a/trunk/mm/swapfile.c b/trunk/mm/swapfile.c index 6cd0a8f90dc7..ecb069e213d0 100644 --- a/trunk/mm/swapfile.c +++ b/trunk/mm/swapfile.c @@ -1884,6 +1884,7 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags) if (error < 0) goto bad_swap; p->bdev = bdev; + p->flags |= SWP_BLKDEV; } else if (S_ISREG(inode->i_mode)) { p->bdev = inode->i_sb->s_bdev; mutex_lock(&inode->i_mutex);