grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH RFC] Simplifying linux_find_partition()


From: Pavel Roskin
Subject: Re: [PATCH RFC] Simplifying linux_find_partition()
Date: Thu, 15 May 2008 18:10:56 -0400

On Mon, 2008-05-12 at 17:32 +0200, Robert Millan wrote:

> > Also, I checked devices.txt from Linux, and I see a simple pattern
> > there.  If the device ends in a number, the partitions are made by
> > adding "p" and the number.  Otherwise, only the number is added.
> 
> Good catch!  But please make sure it's never called for partitions.

As far as I understand, the code already assumes that.
linux_find_partition() is only called if disk->partition is not NULL.
Besides, open_device() is passed the disk information as grub_disk_t,
which should not be used for partitions.

> Also, perhaps an even simpler logic could be:
> 
>   if (real_dev[len - 1] >= '0' && real_dev[len - 1] <= '9')
>     real_dev[len++] = 'p';
> 
> then you can treat real_dev as "%dp%d" form unconditionally.  Would
> that
> work?

It would work, but I prefer not give "len" a conditional meaning, where
it's the length of the original device name for devfs devices, but the
length of the partition name if "p" is appended.  Conditional meanings
can cause bugs.

-- 
Regards,
Pavel Roskin




reply via email to

[Prev in Thread] Current Thread [Next in Thread]