* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Add
safety to avoid triggerring VirtualBox bug.
This commit is contained in:
parent
79c80b06b8
commit
0af3ae2d8b
2 changed files with 13 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
|
* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Add
|
||||||
|
safety to avoid triggerring VirtualBox bug.
|
||||||
|
|
||||||
2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
|
2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
* grub-core/fs/cbfs.c: Don't probe disks of unknow size.
|
* grub-core/fs/cbfs.c: Don't probe disks of unknow size.
|
||||||
|
|
|
@ -455,6 +455,14 @@ grub_biosdisk_rw (int cmd, grub_disk_t disk,
|
||||||
{
|
{
|
||||||
struct grub_biosdisk_data *data = disk->data;
|
struct grub_biosdisk_data *data = disk->data;
|
||||||
|
|
||||||
|
/* VirtualBox fails with sectors above 2T on CDs.
|
||||||
|
Since even BD-ROMS are never that big anyway, return error. */
|
||||||
|
if ((data->flags & GRUB_BIOSDISK_FLAG_CDROM)
|
||||||
|
&& (sector >> 32))
|
||||||
|
return grub_error (GRUB_ERR_OUT_OF_RANGE,
|
||||||
|
N_("attempt to read or write outside of disk `%s'"),
|
||||||
|
disk->name);
|
||||||
|
|
||||||
if (data->flags & GRUB_BIOSDISK_FLAG_LBA)
|
if (data->flags & GRUB_BIOSDISK_FLAG_LBA)
|
||||||
{
|
{
|
||||||
struct grub_biosdisk_dap *dap;
|
struct grub_biosdisk_dap *dap;
|
||||||
|
|
Loading…
Reference in a new issue