On 08/14/2013 10:04 AM, Anand Jain wrote:
On 08/14/2013 03:14 AM, Josef Bacik wrote:
On Fri, Jul 26, 2013 at 01:35:28AM +0800, Anand Jain wrote:
Signed-off-by: Anand Jain <anand.j...@oracle.com>
---
mkfs.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/mkfs.c b/mkfs.c
index 60f906c..66f558a 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -1570,6 +1570,8 @@ int main(int ac, char **av)
* occur by the following processing.
* (btrfs_register_one_device() fails if O_EXCL is on)
*/
+ if (fd > 0)
+ close(fd);
fd = open(file, O_RDWR);
if (fd < 0) {
fprintf(stderr, "unable to open %s: %s\n", file,
@@ -1581,7 +1583,6 @@ int main(int ac, char **av)
if (ret) {
fprintf(stderr, "skipping duplicate device %s in FS\n",
file);
- close(fd);
continue;
}
ret = btrfs_prepare_device(fd, file, zero_end,
&dev_block_count,
This breaks mkfs with multiple disks.
I can't believe as I have been playing with multiple disks
quite a lot recently. let me dig more.
Sorry my mistake.
Indeed further down btrfs_add_to_fsid() stores fd. closing a
stored fd is not correct theoretically.
Josef, Would be keen to know which xfstest caught this. ?
I am sending a patch to back out this, to be applied on the
current integration branch if it helps users for the time being.
Thanks, Anand
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html