| Submitter | Stephen Warren |
|---|---|
| Date | Oct. 10, 2012, 5:57 p.m. |
| Message ID | <1349891871-31062-1-git-send-email-swarren@wwwdotorg.org> |
| Download | mbox | patch |
| Permalink | /patch/190798/ |
| State | Accepted |
| Delegated to: | Tom Rini |
| Headers | show |
Comments
On Wednesday, October 10, 2012 7:57:51 PM, Stephen Warren wrote: > When get_device_and_partition() finds a disk without a partition > table, > under some conditions, it "returns" a disk_partition_t that describes > the entire raw disk. Make sure to initialize all fields in the > partition > descriptor in that case. > > The value chosen for name is just some arbitrary descriptive string. > > The value chosen for info matches the check at the end of > get_device_and_partition(). However, it's probably not that > important; > it's not obvious that the value is really used. > > Reported-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> > Signed-off-by: Stephen Warren <swarren@nvidia.com> > --- > Tom, this is technically a bug, so putting in the release might make > sense, although I doubt it has much practical impact, so deferring it > into u-boot/next would probably be just as good. > > disk/part.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/disk/part.c b/disk/part.c > index a0c77dd..8ba3cde 100644 > --- a/disk/part.c > +++ b/disk/part.c > @@ -561,6 +561,8 @@ int get_device_and_partition(const char *ifname, > const char *dev_part_str, > info->size = (*dev_desc)->lba; > info->blksz = (*dev_desc)->blksz; > info->bootable = 0; > + strcpy((char *)info->type, BOOT_PART_TYPE); > + strcpy((char *)info->name, "Whole Disk"); > #ifdef CONFIG_PARTITION_UUIDS > info->uuid[0] = 0; > #endif Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Best regards, Benoît
On Wed, Oct 10, 2012 at 11:57:51AM -0600, Stephen Warren wrote: > From: Stephen Warren <swarren@nvidia.com> > > When get_device_and_partition() finds a disk without a partition table, > under some conditions, it "returns" a disk_partition_t that describes > the entire raw disk. Make sure to initialize all fields in the partition > descriptor in that case. > > The value chosen for name is just some arbitrary descriptive string. > > The value chosen for info matches the check at the end of > get_device_and_partition(). However, it's probably not that important; > it's not obvious that the value is really used. > > Reported-by: Beno??t Th??baudeau <benoit.thebaudeau@advansee.com> > Signed-off-by: Stephen Warren <swarren@nvidia.com> Applied to u-boot/master, thanks!
On Wed, Oct 10, 2012 at 07:57:51AM -0000, Stephen Warren wrote: > From: Stephen Warren <swarren@nvidia.com> > > When get_device_and_partition() finds a disk without a partition table, > under some conditions, it "returns" a disk_partition_t that describes > the entire raw disk. Make sure to initialize all fields in the partition > descriptor in that case. > > The value chosen for name is just some arbitrary descriptive string. > > The value chosen for info matches the check at the end of > get_device_and_partition(). However, it's probably not that important; > it's not obvious that the value is really used. > > Reported-by: Beno??t Th??baudeau <benoit.thebaudeau@advansee.com> > Signed-off-by: Stephen Warren <swarren@nvidia.com> > Reviewed-by: Beno??t Th??baudeau <benoit.thebaudeau@advansee.com> Applied to u-boot/master, thanks!
Patch
diff --git a/disk/part.c b/disk/part.c index a0c77dd..8ba3cde 100644 --- a/disk/part.c +++ b/disk/part.c @@ -561,6 +561,8 @@ int get_device_and_partition(const char *ifname, const char *dev_part_str, info->size = (*dev_desc)->lba; info->blksz = (*dev_desc)->blksz; info->bootable = 0; + strcpy((char *)info->type, BOOT_PART_TYPE); + strcpy((char *)info->name, "Whole Disk"); #ifdef CONFIG_PARTITION_UUIDS info->uuid[0] = 0; #endif