| To: | David Chinner <dgc@xxxxxxx> |
|---|---|
| Subject: | [xfs-masters] Re: Interaction between Xen and XFS: stray RW mappings |
| From: | Jeremy Fitzhardinge <jeremy@xxxxxxxx> |
| Date: | Fri, 12 Oct 2007 10:08:49 -0700 |
| Cc: | xfs@xxxxxxxxxxx, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Mark Williamson <mark.williamson@xxxxxxxxxxxx>, Morten Bøgeskov <xen-users@xxxxxxxxxxxxxxxxxx>, xfs-masters@xxxxxxxxxxx |
| In-reply-to: | <470FA7C3.90404@xxxxxxxx> |
| References: | <470FA7C3.90404@xxxxxxxx> |
| Reply-to: | xfs-masters@xxxxxxxxxxx |
| Sender: | xfs-masters-bounce@xxxxxxxxxxx |
| User-agent: | Thunderbird 2.0.0.5 (X11/20070727) |
Jeremy Fitzhardinge wrote:
> I guess we could create a special-case interface to do the same thing
> with XFS mappings, but it would be nicer to have something more generic.
>
> Is my analysis correct? Or should XFS not be holding stray mappings?
> Or is there already some kind of generic mechanism I can use to get it
> to release its mappings?
This test patch confirms my theory:
diff -r 36a518c1fb4b fs/xfs/linux-2.6/xfs_buf.c
--- a/fs/xfs/linux-2.6/xfs_buf.c Fri Oct 12 10:03:56 2007 -0700
+++ b/fs/xfs/linux-2.6/xfs_buf.c Fri Oct 12 10:07:03 2007 -0700
@@ -186,6 +186,11 @@ free_address(
void *addr)
{
a_list_t *aentry;
+
+#ifdef CONFIG_XEN
+ vunmap(addr);
+ return;
+#endif
aentry = kmalloc(sizeof(a_list_t), GFP_NOWAIT);
if (likely(aentry)) {
With this in place, the problem goes away.
J
|
| Previous by Date: | [xfs-masters] Re: [PATCH] update sb->s_frozen when freezing read-only mounted device, too, Akinobu Mita |
|---|---|
| Next by Date: | [xfs-masters] Interaction between Xen and XFS: stray RW mappings, Jeremy Fitzhardinge |
| Previous by Thread: | [xfs-masters] Interaction between Xen and XFS: stray RW mappings, Jeremy Fitzhardinge |
| Next by Thread: | [xfs-masters] Re: Interaction between Xen and XFS: stray RW mappings, David Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |