Index: uspace/lib/label/src/gpt.c
===================================================================
--- uspace/lib/label/src/gpt.c	(revision 9f64c1ee8d16d1673b8c21d97781e2bb4019ce6d)
+++ uspace/lib/label/src/gpt.c	(revision 0a1e7e4d2a546c77ee164eecd49445abce8f9415)
@@ -99,4 +99,5 @@
 	uint8_t *etable[2];
 	size_t bsize;
+	aoff64_t nblocks;
 	uint32_t num_entries;
 	uint32_t esize;
@@ -123,4 +124,10 @@
 	}
 
+	rc = bd->ops->get_nblocks(bd->arg, &nblocks);
+	if (rc != EOK) {
+		rc = EIO;
+		goto error;
+	}
+
 	if (bsize < 512 || (bsize % 512) != 0) {
 		rc = EINVAL;
@@ -147,4 +154,9 @@
 
 	h1ba = uint64_t_le2host(gpt_hdr[0]->alternate_lba);
+
+	if (h1ba >= nblocks) {
+		rc = EINVAL;
+		goto error;
+	}
 
 	rc = bd->ops->read(bd->arg, h1ba, 1, gpt_hdr[1]);
