Displaying 7 results from an estimated 7 matches for "i_dirty_pages".
2009 Feb 02
5
[PATCH] btrfs: call mark_inode_dirty when i_size is updated
Hi Chris.
I think it is needed to call mark_inode_dirty() when file size expands
in order to flush metadata updates to HDD through sync() syscall or
background_writeout().
Thanks.
Signed-off-by: Hisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
diff -Nrup linux-2.6.29-rc3.org/fs/btrfs/file.c linux-2.6.29-rc3/fs/btrfs/file.c
--- linux-2.6.29-rc3.org/fs/btrfs/file.c 2009-02-02
2009 Jun 08
1
[PATCH] Btrfs: fdatasync should skip metadata writeout
...9-06-04 16:26:25.000000000 +0900
+++ linux-2.6.30-rc8.btrfs/fs/btrfs/file.c 2009-06-08 10:48:13.000000000 +0900
@@ -1189,6 +1189,8 @@ int btrfs_sync_file(struct file *file, s
btrfs_wait_ordered_range(inode, 0, (u64)-1);
root->log_batch++;
+ if (datasync && !(inode->i_state & I_DIRTY_PAGES))
+ goto out;
/*
* ok we haven''t committed the transaction yet, lets do a commit
*/
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-i...
2012 Jun 26
6
[PATCH] Add a page cache-backed balloon device driver.
...+ for (; vb->num_pfns != 0; vb->num_pfns--) {
+ struct page *page = pfn_to_page(vb->pfns[vb->num_pfns - 1]);
+ /*
+ * Release our refcount on the page so that it can be reclaimed
+ * when necessary.
+ */
+ page_cache_release(page);
+ }
+ __mark_inode_dirty(&the_inode.inode, I_DIRTY_PAGES);
+}
+
+static inline void update_stat(struct virtio_balloon *vb, int idx,
+ u64 val)
+{
+ BUG_ON(idx >= VIRTIO_BALLOON_S_NR);
+ vb->stats[idx].tag = idx;
+ vb->stats[idx].val = val;
+}
+
+#define pages_to_bytes(x) ((u64)(x) << PAGE_SHIFT)
+
+static inline u32 config_pages(s...
2012 Jun 26
6
[PATCH] Add a page cache-backed balloon device driver.
...+ for (; vb->num_pfns != 0; vb->num_pfns--) {
+ struct page *page = pfn_to_page(vb->pfns[vb->num_pfns - 1]);
+ /*
+ * Release our refcount on the page so that it can be reclaimed
+ * when necessary.
+ */
+ page_cache_release(page);
+ }
+ __mark_inode_dirty(&the_inode.inode, I_DIRTY_PAGES);
+}
+
+static inline void update_stat(struct virtio_balloon *vb, int idx,
+ u64 val)
+{
+ BUG_ON(idx >= VIRTIO_BALLOON_S_NR);
+ vb->stats[idx].tag = idx;
+ vb->stats[idx].val = val;
+}
+
+#define pages_to_bytes(x) ((u64)(x) << PAGE_SHIFT)
+
+static inline u32 config_pages(s...
2012 Jul 25
0
No subject
...;> + * Release our refcount on the page so that it can be reclaimed
> >> + * when necessary.
> >> + */
> >> + page_cache_release(page);
> >> + }
> >> + __mark_inode_dirty(&the_inode.inode, I_DIRTY_PAGES);
> >> +}
> >> +
> >> +static inline void update_stat(struct virtio_balloon *vb, int idx,
> >> + u64 val)
> >> +{
> >> + BUG_ON(idx >= VIRTIO_BALLOON_S_NR);
> >> + vb->stats[idx].tag = idx;
>...
2012 Jul 25
0
No subject
...;> + * Release our refcount on the page so that it can be reclaimed
> >> + * when necessary.
> >> + */
> >> + page_cache_release(page);
> >> + }
> >> + __mark_inode_dirty(&the_inode.inode, I_DIRTY_PAGES);
> >> +}
> >> +
> >> +static inline void update_stat(struct virtio_balloon *vb, int idx,
> >> + u64 val)
> >> +{
> >> + BUG_ON(idx >= VIRTIO_BALLOON_S_NR);
> >> + vb->stats[idx].tag = idx;
>...
2011 Jun 24
10
[PATCH 0/9] remove i_alloc_sem V2
i_alloc_sem has always been a bit of an odd "lock". It''s the only remaining
rw_semaphore that can be released by a different thread than the one that
locked it, and it''s use case in the core direct I/O code is more like a
counter given that the writers already have external serialization.
This series removes it in favour of a simpler counter scheme, thus getting
rid