lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAGBYx2YvZWy-ZXtXjMaZGV=ohON8RskjSdvskHTVGHvPqa-C2w@mail.gmail.com>
Date:	Fri, 12 Aug 2011 16:43:24 +0800
From:	Yongqiang Yang <xiaoqiangnk@...il.com>
To:	Andreas Dilger <adilger@...ger.ca>
Cc:	linux-ext4@...r.kernel.org, tytso@....edu
Subject: Re: [PATCH] e2fsprogs: add 64bit-online-resize support

On Thu, Aug 11, 2011 at 3:42 PM, Andreas Dilger <adilger@...ger.ca> wrote:
> On 2011-08-11, at 1:10 AM, Yongqiang Yang wrote:
>> This patch adds 64bit-resize support to e2fsprogs.
>>
>> Signed-off-by: Yongqiang Yang <xiaoqiangnk@...il.com>
>> ---
>> lib/ext2fs/ext2_fs.h |    1 +
>> resize/online.c      |   22 +++++++++++++++++++++-
>> 2 files changed, 22 insertions(+), 1 deletions(-)
>>
>> diff --git a/lib/ext2fs/ext2_fs.h b/lib/ext2fs/ext2_fs.h
>> index 54cb3d4..4fec5db 100644
>> --- a/lib/ext2fs/ext2_fs.h
>> +++ b/lib/ext2fs/ext2_fs.h
>> @@ -327,6 +327,7 @@ struct ext4_new_group_input {
>> #define EXT2_IOC_GROUP_EXTEND         _IOW('f', 7, unsigned long)
>> #define EXT2_IOC_GROUP_ADD            _IOW('f', 8,struct ext2_new_group_input)
>> #define EXT4_IOC_GROUP_ADD            _IOW('f', 8,struct ext4_new_group_input)
>> +#define EXT4_IOC_RESIZE_FS           _IOW('f', 16, __u64)
>>
>> /*
>>  * Structure of an inode on the disk
>> diff --git a/resize/online.c b/resize/online.c
>> index 1d8d4ec..53ad852 100644
>> --- a/resize/online.c
>> +++ b/resize/online.c
>> @@ -51,7 +51,7 @@ errcode_t online_resize_fs(ext2_filsys fs, const char *mtpt,
>>                                 fs->super->s_first_data_block,
>>                                 EXT2_BLOCKS_PER_GROUP(fs->super)),
>>               EXT2_DESC_PER_BLOCK(fs->super));
>> -     printf("old desc_blocks = %lu, new_desc_blocks = %lu\n",
>> +     printf("old_desc_blocks = %lu, new_desc_blocks = %lu\n",
>>              fs->desc_blocks, new_desc_blocks);
>>       if (!(fs->super->s_feature_compat &
>>             EXT2_FEATURE_COMPAT_RESIZE_INODE) &&
>> @@ -69,6 +69,26 @@ errcode_t online_resize_fs(ext2_filsys fs, const char *mtpt,
>>       }
>>
>>       size=ext2fs_blocks_count(sb);
>> +
>> +     if (ioctl(fd, EXT4_IOC_RESIZE_FS, new_size)) {
>> +             if (errno == ENOTTY) {
>> +                     printf("Kernel does not support 64bit-online resizing, "
>> +                            "tring the old style online resizing\n");
>
> s/tring/trying/
>
> In any case, I don't think users care about which ioctl is in use, just
> that it works correctly on the kernel they are using.  IMHO it should just
> silently try both ioctls() without any extra warnings.
Thanks, it will be fixed.

Yongqiang.
>
>> +             } else {
>> +                     if (errno == EPERM)
>> +                             com_err(program_name, 0,
>> +                             _("Permission denied to resize filesystem"));
>> +                     else
>> +                             com_err(program_name, errno,
>> +                             _("While checking for on-line resizing "
>> +                               "support"));
>> +                     exit(1);
>> +             }
>> +     } else {
>> +             close(fd);
>> +             return 0;
>> +     }
>> +
>>       if (ioctl(fd, EXT2_IOC_GROUP_EXTEND, &size)) {
>>               if (errno == EPERM)
>>                       com_err(program_name, 0,
>> --
>> 1.7.5.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
>> the body of a message to majordomo@...r.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>
> Cheers, Andreas
>
>
>
>
>
>



-- 
Best Wishes
Yongqiang Yang
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ