sparc64: Don't use devspec to determine the OBP path
Don't use devspec to determine the OBP path on SPARC hardware. Within all versions of Linux on SPARC, the devspec returns one of three values: "none", "vnet-port", or "vdisk". Unlike on PPC, none of these values are useful in determining the OBP path. Before this patch grub-ofpathname always returned the wrong value for a virtual disk. For example: % grub-ofpathname /dev/vdiskc2 vdisk/disk@2:b After this patch it now returns the correct value: % grub-ofpathname /dev/vdiskc2 /virtual-devices@100/channel-devices@200/disk@2:b Orabug: 24459765 Signed-off-by: Eric Snowberg <eric.snowberg@oracle.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
parent
6e329bec23
commit
da4e8334b2
1 changed files with 3 additions and 0 deletions
|
@ -120,6 +120,8 @@ find_obppath (const char *sysfs_path_orig)
|
|||
#endif
|
||||
|
||||
fd = open(path, O_RDONLY);
|
||||
|
||||
#ifndef __sparc__
|
||||
if (fd < 0 || fstat (fd, &st) < 0)
|
||||
{
|
||||
if (fd >= 0)
|
||||
|
@ -127,6 +129,7 @@ find_obppath (const char *sysfs_path_orig)
|
|||
snprintf(path, path_size, "%s/devspec", sysfs_path);
|
||||
fd = open(path, O_RDONLY);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (fd < 0 || fstat (fd, &st) < 0)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue