diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 6762e32..e4b70b3 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -519,16 +519,9 @@ BB_HASHCHECK_FUNCTION = "sstate_checkhashes"
 def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d):
 
     ret = []
-    # This needs to go away, FIXME
-    mapping = {
-        "do_populate_sysroot" : "populate-sysroot",
-        "do_populate_lic" : "populate-lic",
-        "do_package_write_ipk" : "deploy-ipk",
-        "do_package_write_deb" : "deploy-deb",
-        "do_package_write_rpm" : "deploy-rpm",
-        "do_package" : "package",
-        "do_deploy" : "deploy",
-    }
+    mapping = {}
+    for t in d.getVar("SSTATETASKS", True).split():
+        mapping[t] = d.getVarFlag(t, "sstate-name", True)
 
     for task in range(len(sq_fn)):
         spec = sq_hashfn[task].split(" ")[1]
