diff --git a/ginstall/ginstall.py b/ginstall/ginstall.py
index c53f1af..1d233c6 100755
--- a/ginstall/ginstall.py
+++ b/ginstall/ginstall.py
@@ -72,6 +72,7 @@
     'SYSBLOCK': '/sys/block',
     'MMCBLK0BOOT0': '/dev/mmcblk0boot0',
     'MMCBLK0BOOT1': '/dev/mmcblk0boot1',
+    'MEMINFO': '/proc/meminfo',
 }
 
 MMC_RO_LOCK = {
@@ -132,6 +133,16 @@
   return open(F['ETCVERSION']).read().strip()
 
 
+def GetMemTotal():
+  total = open(F['MEMINFO']).readline()
+  total = total.split(' ')
+  total = filter(None, total)
+  if len(total) != 3:
+    print 'Error parsing /proc/meminfo'
+    return 0
+  return 1024 * int(total[1])
+
+
 def GetInternalHarddisk():
   for blkdev in sorted(glob.glob(F['SYSBLOCK'] + '/sd?')):
     dev_path = os.path.realpath(blkdev + '/device')
@@ -760,6 +771,9 @@
   Raises:
     Fatal: if install fails
   """
+  if GetPlatform() == 'GFHD254' and GetMemTotal() < 4*1e9:
+    print 'Skipping bootloader on 2GB lockdown.'
+    return
 
   loader_start = loader.filelike.tell()
   installed = False
diff --git a/ginstall/ginstall_test.py b/ginstall/ginstall_test.py
index 928cf58..8deac64 100755
--- a/ginstall/ginstall_test.py
+++ b/ginstall/ginstall_test.py
@@ -357,5 +357,14 @@
 
     return uloader, uloader_data
 
+  def testGetMemTotal(self):
+    ginstall.F['MEMINFO'] = 'testdata/proc/meminfo1'
+    total = ginstall.GetMemTotal()
+    self.assertTrue(total > 4*1e9)
+    ginstall.F['MEMINFO'] = 'testdata/proc/meminfo2'
+    total = ginstall.GetMemTotal()
+    self.assertTrue(total < 4*1e9)
+
+
 if __name__ == '__main__':
   unittest.main()
diff --git a/ginstall/testdata/proc/meminfo1 b/ginstall/testdata/proc/meminfo1
new file mode 100644
index 0000000..0a6b71a
--- /dev/null
+++ b/ginstall/testdata/proc/meminfo1
@@ -0,0 +1,40 @@
+MemTotal:        4144364 kB
+MemFree:         2207124 kB
+MemAvailable:    2654112 kB
+Buffers:          146000 kB
+Cached:           354176 kB
+SwapCached:            0 kB
+Active:           317572 kB
+Inactive:         438000 kB
+Active(anon):     255532 kB
+Inactive(anon):    35648 kB
+Active(file):      62040 kB
+Inactive(file):   402352 kB
+Unevictable:           0 kB
+Mlocked:               0 kB
+HighTotal:       3932160 kB
+HighFree:        2175912 kB
+LowTotal:         212204 kB
+LowFree:           31212 kB
+SwapTotal:             0 kB
+SwapFree:              0 kB
+Dirty:                 0 kB
+Writeback:             0 kB
+AnonPages:        255416 kB
+Mapped:            81892 kB
+Shmem:             35788 kB
+Slab:              20328 kB
+SReclaimable:      10616 kB
+SUnreclaim:         9712 kB
+KernelStack:        2792 kB
+PageTables:         7436 kB
+NFS_Unstable:          0 kB
+Bounce:                0 kB
+WritebackTmp:          0 kB
+CommitLimit:     2072180 kB
+Committed_AS:     891408 kB
+VmallocTotal:     761856 kB
+VmallocUsed:       41868 kB
+VmallocChunk:     703484 kB
+CmaTotal:        2965504 kB
+CmaFree:         1427640 kB
diff --git a/ginstall/testdata/proc/meminfo2 b/ginstall/testdata/proc/meminfo2
new file mode 100644
index 0000000..cc3fab8
--- /dev/null
+++ b/ginstall/testdata/proc/meminfo2
@@ -0,0 +1,40 @@
+MemTotal:        2144364 kB
+MemFree:         2207200 kB
+MemAvailable:    2654188 kB
+Buffers:          146000 kB
+Cached:           354176 kB
+SwapCached:            0 kB
+Active:           317580 kB
+Inactive:         438000 kB
+Active(anon):     255540 kB
+Inactive(anon):    35648 kB
+Active(file):      62040 kB
+Inactive(file):   402352 kB
+Unevictable:           0 kB
+Mlocked:               0 kB
+HighTotal:       3932160 kB
+HighFree:        2175912 kB
+LowTotal:         212204 kB
+LowFree:           31288 kB
+SwapTotal:             0 kB
+SwapFree:              0 kB
+Dirty:                 0 kB
+Writeback:             0 kB
+AnonPages:        255420 kB
+Mapped:            81892 kB
+Shmem:             35788 kB
+Slab:              20316 kB
+SReclaimable:      10616 kB
+SUnreclaim:         9700 kB
+KernelStack:        2792 kB
+PageTables:         7432 kB
+NFS_Unstable:          0 kB
+Bounce:                0 kB
+WritebackTmp:          0 kB
+CommitLimit:     2072180 kB
+Committed_AS:     891408 kB
+VmallocTotal:     761856 kB
+VmallocUsed:       41868 kB
+VmallocChunk:     703484 kB
+CmaTotal:        2965504 kB
+CmaFree:         1427540 kB
