All of lore.kernel.org
 help / color / mirror / Atom feed
From: vgoyal@redhat.com
To: linux-kernel@vger.kernel.org, axboe@kernel.dk,
	dm-devel@redhat.com, kzak@redhat.com
Cc: psusi@ubuntu.com, vgoyal@redhat.comi, maxim.patlasov@gmail.com
Subject: [patch 0/2] [V4] block: Support online resize of disk partitions
Date: Mon, 09 Jul 2012 17:34:18 -0400	[thread overview]
Message-ID: <20120709213418.799759100@redhat.com> (raw)

Hi,

Few people have pinged me in rencent past about status of this patch, hence,
this is V4 of patch which adds support for online resizing of a partition.
This patch is based on previously posted patches by Phillip Susi. 

There are two patches. Out of which one is kernel patch and other one is
util-linux patch to add support of a user space utility "resizepart" to
allow resizing the partition.

This ioctl only resizes the partition size in kenrel and does not change
the size on disk. A user needs to make sure that corresponding changes
are made to disk data structures also using fdisk(or partx), if changes
are to be retained across reboot.

Changes since V3
----------------
- Do bdput() in error path as per the Maxim's review comments.

Changes since V2
----------------
- Do not ignore the "start" parameter in RESIZE ioctl.
- Change resizepart utility to parse sysfs to get to partition start.

Changes since V1
----------------
Following are changes since the version Phillip posted.
- RESIZE ioctl ignores the partition "start" and does not expect user to
  specify one. Caller needs to just specify "device", "partition number" and
  "size" of new partition.

- Got rid of part_nr_sects_write_begin/part_nr_sects_write_end functions
  and replaced these with single part_nr_sects_write().

- Some sequence counter related changes are simply lifted from i_size_write().

- Initialized part->nr_sects_seq using seqcount_init().

Phillip, do let me know if I should put your signed-off-by also in the
patch.

Any review feedback is welcome.

I did following test.

- Create a partition of 10MB on a disk using fdisk.
- Add this partition to a volume group
- Use fdisk to increase the partition size to 20MB. (First delete the
  partition and then create a new one of 20MB size).
- Use resizepart to extend partition size in kernel.
        resizepart /dev/sdc 1 40960
- Do pvresize on partition so that physical volume can be incrased in
  size online.
        pvresize /dev/sda1

pvresize does recognize the new size. Also lsblk and /proc/partitions
report the new size of partition.

Thanks
Vivek

             reply	other threads:[~2012-07-09 21:34 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-09 21:34 vgoyal [this message]
2012-07-09 21:34 ` [patch 1/2] block: add partition resize function to blkpg ioctl vgoyal
2012-07-09 21:34 ` [patch 2/2] util-linux: resizepart: Utility to resize a partition vgoyal
2012-08-13 20:20   ` Karel Zak
2012-08-13 20:20     ` Karel Zak
2012-07-09 22:40 ` [patch 0/2] [V4] block: Support online resize of disk partitions Phillip Susi
2012-07-10 13:57   ` Vivek Goyal
2012-07-10 14:13     ` Phillip Susi
2012-07-10 14:20       ` Vivek Goyal
2012-07-10 14:59         ` Vivek Goyal
2012-08-01 14:07 ` Vivek Goyal
2012-08-01 15:49   ` Jens Axboe
2012-08-01 15:59     ` Vivek Goyal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120709213418.799759100@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=axboe@kernel.dk \
    --cc=dm-devel@redhat.com \
    --cc=kzak@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maxim.patlasov@gmail.com \
    --cc=psusi@ubuntu.com \
    --cc=vgoyal@redhat.comi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.