diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp
index 896dd566c1fc0533b7ab7c3b2703015530a1e241..2eb60a7980db3da4be60702c27be3194eb5f950d 100644
--- a/indra/llrender/llshadermgr.cpp
+++ b/indra/llrender/llshadermgr.cpp
@@ -1361,7 +1361,6 @@ void LLShaderMgr::initAttribsAndUniforms()
 	mReservedUniforms.push_back("alpha_ramp");
 
 	mReservedUniforms.push_back("origin");
-	mReservedUniforms.push_back("display_gamma");
 
     mReservedUniforms.push_back("inscatter");
     mReservedUniforms.push_back("sun_size");
diff --git a/indra/llrender/llshadermgr.h b/indra/llrender/llshadermgr.h
index 127b5ce5b6875785a1de467a27fbf2bbc3724b90..a444cfeb3082c299c2c8d4101ec66e5e109ad997 100644
--- a/indra/llrender/llshadermgr.h
+++ b/indra/llrender/llshadermgr.h
@@ -217,7 +217,6 @@ class LLShaderMgr
 		TERRAIN_ALPHARAMP,
 		
 		SHINY_ORIGIN,
-        DISPLAY_GAMMA,
 
         INSCATTER_RT,
         SUN_SIZE,
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp
index da0467315f3f5e61308b4e5d1890febf790ec6bd..fe7540a15bb247c582abe30563e3a264169cf387 100644
--- a/indra/newview/lldrawpoolalpha.cpp
+++ b/indra/newview/lldrawpoolalpha.cpp
@@ -108,15 +108,12 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass)
 { 
     LL_RECORD_BLOCK_TIME(FTM_RENDER_ALPHA_DEFERRED);
 
-    F32 gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
-
     emissive_shader = (LLPipeline::sRenderDeferred)   ? &gDeferredEmissiveProgram    :
                       (LLPipeline::sUnderWaterRender) ? &gObjectEmissiveWaterProgram : &gObjectEmissiveProgram;
 
     emissive_shader->bind();
     emissive_shader->uniform1i(LLShaderMgr::NO_ATMO, (LLPipeline::sRenderingHUDs) ? 1 : 0);
     emissive_shader->uniform1f(LLShaderMgr::TEXTURE_GAMMA, 2.2f); 
-	emissive_shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
 
 	if (pass == 0)
 	{
@@ -125,7 +122,6 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass)
 
 		fullbright_shader->bind();
 		fullbright_shader->uniform1f(LLShaderMgr::TEXTURE_GAMMA, 2.2f); 
-		fullbright_shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
         fullbright_shader->uniform1i(LLShaderMgr::NO_ATMO, LLPipeline::sRenderingHUDs ? 1 : 0);
 		fullbright_shader->unbind();
 
@@ -135,7 +131,6 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass)
 		//prime simple shader (loads shadow relevant uniforms)
 		gPipeline.bindDeferredShader(*simple_shader);
 
-		simple_shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
         simple_shader->uniform1i(LLShaderMgr::NO_ATMO, LLPipeline::sRenderingHUDs ? 1 : 0);
 	}
 	else if (!LLPipeline::sImpostorRender)
diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index 789a254389b8e34ed46ed82b9f293ede3567a848..5cef15918b00f5bd66d21e1f64b6755b257d612d 100644
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -1110,9 +1110,6 @@ void LLDrawPoolAvatar::beginRiggedGlow()
 	    {
 		    sVertexProgram->uniform1i(LLShaderMgr::NO_ATMO, 0);
 	    }
-
-		F32 gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
-		sVertexProgram->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
 	}
 }
 
@@ -1167,8 +1164,6 @@ void LLDrawPoolAvatar::beginRiggedFullbright()
 		{
             sVertexProgram->uniform1f(LLShaderMgr::TEXTURE_GAMMA, 2.2f);
             sVertexProgram->uniform1i(LLShaderMgr::NO_ATMO, 0);
-			F32 gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
-			sVertexProgram->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
 		} 
 		else 
 		{
@@ -1292,8 +1287,6 @@ void LLDrawPoolAvatar::beginRiggedFullbrightShiny()
 		else if (LLPipeline::sRenderDeferred)
 		{
             sVertexProgram->uniform1f(LLShaderMgr::TEXTURE_GAMMA, 2.2f);
-			F32 gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
-			sVertexProgram->uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
             sVertexProgram->uniform1i(LLShaderMgr::NO_ATMO, 0);
         }
         else
diff --git a/indra/newview/llsettingsvo.cpp b/indra/newview/llsettingsvo.cpp
index d96f276a71e7cb5a55b6211d73a84b48b77f59ec..51a1bbc27abea6008901a73f39e17169e9a46f3a 100644
--- a/indra/newview/llsettingsvo.cpp
+++ b/indra/newview/llsettingsvo.cpp
@@ -705,10 +705,8 @@ void LLSettingsVOSky::applySpecial(void *ptarget, bool force)
     shader->uniform1f(LLShaderMgr::DISTANCE_MULTIPLIER, getDistanceMultiplier());
     
     F32 g             = getGamma();    
-    F32 display_gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
 
     shader->uniform1f(LLShaderMgr::GAMMA, g);
-    shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, display_gamma);
 }
 
 LLSettingsSky::parammapping_t LLSettingsVOSky::getParameterMap() const
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 9e816a7b3bda64d8def406bf8e8ebe0cb9c947ad..0c8566dbe22bc97c2d3347061f061a117b363921 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -9046,10 +9046,6 @@ void LLPipeline::renderDeferredLighting(LLRenderTarget* screen_target)
 		
         gDeferredPostGammaCorrectProgram.uniform2f(LLShaderMgr::DEFERRED_SCREEN_RES, screen_target->getWidth(), screen_target->getHeight());
 		
-		F32 gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
-
-		gDeferredPostGammaCorrectProgram.uniform1f(LLShaderMgr::DISPLAY_GAMMA, (gamma > 0.1f) ? 1.0f / gamma : (1.0f/2.2f));
-		
 		gGL.begin(LLRender::TRIANGLE_STRIP);
 		gGL.texCoord2f(tc1.mV[0], tc1.mV[1]);
 		gGL.vertex2f(-1,-1);