On Thu, Dec 01, 2011 at 04:38:33PM -0500, Phillip Susi wrote: > Commit 1b766b69 added the _has_partitions function to check if a device > was a loop device and if so, skip updating the kernel partition table > because loop devices did not support partitions. This function never > worked anyway,
Could you be more specific about when does it not work? > and loop devices now ( since linux 3.0 ) support partitions, > so remove this crufty code. Doesn't it break parted+loop devices with older than 3.0 kernel? > > Signed-off-by: Phillip Susi <[email protected]> > --- > libparted/arch/linux.c | 24 ------------------------ > 1 files changed, 0 insertions(+), 24 deletions(-) > > diff --git a/libparted/arch/linux.c b/libparted/arch/linux.c > index aab2dd8..3799b9d 100644 > --- a/libparted/arch/linux.c > +++ b/libparted/arch/linux.c > @@ -2315,18 +2315,6 @@ _partition_is_mounted (const PedPartition *part) > } > > static int > -_has_partitions (const PedDisk* disk) > -{ > - PED_ASSERT(disk != NULL); > - > - /* Some devices can't be partitioned. */ > - if (!strcmp (disk->type->name, "loop")) > - return 0; > - > - return 1; > -} > - > -static int > linux_partition_is_busy (const PedPartition* part) > { > PedPartition* walk; > @@ -2368,9 +2356,6 @@ _blkpg_add_partition (PedDisk* disk, const PedPartition > *part) > PED_ASSERT(disk != NULL); > PED_ASSERT(disk->dev->sector_size % PED_SECTOR_SIZE_DEFAULT == 0); > > - if (!_has_partitions (disk)) > - return 0; > - > if (ped_disk_type_check_feature (disk->type, > PED_DISK_TYPE_PARTITION_NAME)) > vol_name = ped_partition_get_name (part); > @@ -2419,9 +2404,6 @@ _blkpg_remove_partition (PedDisk* disk, int n) > { > struct blkpg_partition linux_part; > > - if (!_has_partitions (disk)) > - return 0; > - > memset (&linux_part, 0, sizeof (linux_part)); > linux_part.pno = n; > return _blkpg_part_command (disk->dev, &linux_part, > @@ -2743,9 +2725,6 @@ _dm_add_partition (PedDisk* disk, PedPartition* part) > char* params = NULL; > LinuxSpecific* arch_specific = LINUX_SPECIFIC (disk->dev); > > - if (!_has_partitions(disk)) > - return 0; > - > /* Get map name from devicemapper */ > struct dm_task *task = dm_task_create (DM_DEVICE_INFO); > if (!task) > @@ -2843,9 +2822,6 @@ _have_blkpg () > static int > linux_disk_commit (PedDisk* disk) > { > - if (!_has_partitions (disk)) > - return 1; > - > #ifdef ENABLE_DEVICE_MAPPER > if (disk->dev->type == PED_DEVICE_DM) > return _dm_reread_part_table (disk); > -- > 1.7.5.4 > > Petr -- Petr Uzel IRC: ptr_uzl @ freenode

