git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
drivers
/
block
/
rd.c
diff --git
a/drivers/block/rd.c
b/drivers/block/rd.c
index
940bfd7
..
ffd6abd
100644
(file)
--- a/
drivers/block/rd.c
+++ b/
drivers/block/rd.c
@@
-186,8
+186,7
@@
static int ramdisk_writepages(struct address_space *mapping,
*/
static int ramdisk_set_page_dirty(struct page *page)
{
*/
static int ramdisk_set_page_dirty(struct page *page)
{
- if (!TestSetPageDirty(page))
- return 1;
+ SetPageDirty(page);
return 0;
}
return 0;
}
@@
-311,12
+310,12
@@
static int rd_ioctl(struct inode *inode, struct file *file,
* cache
*/
error = -EBUSY;
* cache
*/
error = -EBUSY;
-
mutex_lock(&bdev->bd_mutex
);
+
down(&bdev->bd_sem
);
if (bdev->bd_openers <= 2) {
truncate_inode_pages(bdev->bd_inode->i_mapping, 0);
error = 0;
}
if (bdev->bd_openers <= 2) {
truncate_inode_pages(bdev->bd_inode->i_mapping, 0);
error = 0;
}
-
mutex_unlock(&bdev->bd_mutex
);
+
up(&bdev->bd_sem
);
return error;
}
return error;
}