xfs
[Top] [All Lists]

Re: [PATCH 21/49] xfs: create xfs_bmap_util.[ch]

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH 21/49] xfs: create xfs_bmap_util.[ch]
From: Mark Tinguely <tinguely@xxxxxxx>
Date: Sat, 27 Jul 2013 12:57:43 -0500
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1374215120-7271-22-git-send-email-david@xxxxxxxxxxxxx>
References: <1374215120-7271-1-git-send-email-david@xxxxxxxxxxxxx> <1374215120-7271-22-git-send-email-david@xxxxxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:9.0) Gecko/20120122 Thunderbird/9.0
On 07/19/13 01:24, Dave Chinner wrote:
From: Dave Chinner<dchinner@xxxxxxxxxx>

There is a bunch of code in xfs_bmap.c that is kernel specific and
not shared with userspace. to minimise the difference between the
kernel and userspace code, shift this unshared code to
xfs_bmap_util.c, and the declarations to xfs_bmap_util.h.

The biggest issue here is xfs_bmap_finish() - userspce has it's own
definition of this function, and so we need to move it out of
xfs_bmap.[ch]. This means several other files need to include
xfs_bmap_util.c as well.

It also introduces and interesting dance for the stack switching
code in xfs_bmapi_allocate(). The stack switching/workqueue code is
actually moved to xfs_bmap_util.c, so that userspace can simply use
a #define in a header file to connect the dots without needing to
know about the stack switch code at all.

Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx>
---

okay, function structure moved with some white space and typedef to struct changes and some functions in xfs_bmap.c are needed in xfs_bmap_util.c so they are no longer static. Looks good.

Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>

<Prev in Thread] Current Thread [Next in Thread>