Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 185693
b: refs/heads/master
c: 193cf4b
h: refs/heads/master
i:
  185691: 2190614
v: v3
  • Loading branch information
Boaz Harrosh authored and Al Viro committed Mar 3, 2010
1 parent 5a7e560 commit 8b9c63a
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 19 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ad2a722f196d2b014f49e6c37e072df71eb3695f
refs/heads/master: 193cf4b99113a4550598ba9e8343e591fc062e23
22 changes: 6 additions & 16 deletions trunk/fs/libfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -338,36 +338,27 @@ int simple_readpage(struct file *file, struct page *page)
return 0;
}

int simple_prepare_write(struct file *file, struct page *page,
unsigned from, unsigned to)
{
if (!PageUptodate(page)) {
if (to - from != PAGE_CACHE_SIZE)
zero_user_segments(page,
0, from,
to, PAGE_CACHE_SIZE);
}
return 0;
}

int simple_write_begin(struct file *file, struct address_space *mapping,
loff_t pos, unsigned len, unsigned flags,
struct page **pagep, void **fsdata)
{
struct page *page;
pgoff_t index;
unsigned from;

index = pos >> PAGE_CACHE_SHIFT;
from = pos & (PAGE_CACHE_SIZE - 1);

page = grab_cache_page_write_begin(mapping, index, flags);
if (!page)
return -ENOMEM;

*pagep = page;

return simple_prepare_write(file, page, from, from+len);
if (!PageUptodate(page) && (len != PAGE_CACHE_SIZE)) {
unsigned from = pos & (PAGE_CACHE_SIZE - 1);

zero_user_segments(page, 0, from, from + len, PAGE_CACHE_SIZE);
}
return 0;
}

/**
Expand Down Expand Up @@ -864,7 +855,6 @@ EXPORT_SYMBOL(simple_getattr);
EXPORT_SYMBOL(simple_link);
EXPORT_SYMBOL(simple_lookup);
EXPORT_SYMBOL(simple_pin_fs);
EXPORT_UNUSED_SYMBOL(simple_prepare_write);
EXPORT_SYMBOL(simple_readpage);
EXPORT_SYMBOL(simple_release_fs);
EXPORT_SYMBOL(simple_rename);
Expand Down
2 changes: 0 additions & 2 deletions trunk/include/linux/fs.h
Original file line number Diff line number Diff line change
Expand Up @@ -2340,8 +2340,6 @@ extern int simple_rename(struct inode *, struct dentry *, struct inode *, struct
extern int simple_sync_file(struct file *, struct dentry *, int);
extern int simple_empty(struct dentry *);
extern int simple_readpage(struct file *file, struct page *page);
extern int simple_prepare_write(struct file *file, struct page *page,
unsigned offset, unsigned to);
extern int simple_write_begin(struct file *file, struct address_space *mapping,
loff_t pos, unsigned len, unsigned flags,
struct page **pagep, void **fsdata);
Expand Down

0 comments on commit 8b9c63a

Please sign in to comment.