diff --git a/parameter/ConfigurableDomain.cpp b/parameter/ConfigurableDomain.cpp
index 8a497fd..7393dbe 100644
--- a/parameter/ConfigurableDomain.cpp
+++ b/parameter/ConfigurableDomain.cpp
@@ -347,7 +347,6 @@
 
         return false;
     }
-    log_info("Adding configurable element \"%s\" into domain \"%s\"", pConfigurableElement->getPath().c_str(), getName().c_str());
 
     // Do add
     doAddConfigurableElement(pConfigurableElement, pMainBlackboard);
@@ -808,7 +807,6 @@
 // Ensure validity on whole domain from main blackboard
 void CConfigurableDomain::validate(const CParameterBlackboard* pMainBlackboard)
 {
-    log_info("Validating whole domain \"" + getName() + "\" against main blackboard");
 
     // Propagate
     uint32_t uiNbConfigurations = getNbChildren();
@@ -867,8 +865,6 @@
         return;
     }
 
-    log_info("Auto validating domain \"" + getName() + "\" against configuration \"" + pValidDomainConfiguration->getName() + "\" for configurable element " + pConfigurableElement->getPath());
-
     // Validate all other configurations against found one, if any
     uint32_t uiNbConfigurations = getNbChildren();
     uint32_t uiChild;
diff --git a/parameter/ParameterMgr.cpp b/parameter/ParameterMgr.cpp
index 646e7af..24fd464 100644
--- a/parameter/ParameterMgr.cpp
+++ b/parameter/ParameterMgr.cpp
@@ -408,7 +408,7 @@
     // Retrieve system to load structure to
     CSystemClass* pSystemClass = getSystemClass();
 
-    CAutoLog autoLog(this, "Loading " + pSystemClass->getName() + " system class structure");
+    log_info("Loading " + pSystemClass->getName() + " system class structure");
 
     // Get structure description element
     const CFrameworkConfigurationLocation* pStructureDescriptionFileLocation = static_cast<const CFrameworkConfigurationLocation*>(getConstFrameworkConfiguration()->findChildOfKind("StructureDescriptionFileLocation"));
