Roll base to 3ed5621c3408ce7109597b81faa0c27f1085a2cb.

(Not really) keeping up with the Joneses^W^Wmojo.

TBR=jamesr@chromium.org

Review URL: https://codereview.chromium.org/2058093002 .
diff --git a/.gitignore b/.gitignore
index 238db3b..dda7553 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,6 +19,7 @@
 /testing/gtest/
 /third_party/boringssl/src/
 /third_party/icu/
+/third_party/lss/
 /tools/grit/
 /url
 
diff --git a/DEPS b/DEPS
index d9d494a..d160d42 100644
--- a/DEPS
+++ b/DEPS
@@ -19,10 +19,11 @@
 
 vars = {
   'chromium_git': 'https://chromium.googlesource.com',
-  'base_revision': '5e00da80f6adb7082d1c0e88d3274cf87cc43bc5',
+  'base_revision': '3ed5621c3408ce7109597b81faa0c27f1085a2cb',
   'boringssl_revision': '2deb984187ce8f6c739c780e7fe95e859e93b3da',
   'buildtools_revision': '222bd42ce39d1bd8f08fe089b066f49c469e1cdf',
   'gurl_revision': '718eee97ed6a4df41d14726eb2eddc871d9eaaa3',
+  'lss_revision': '6f97298fe3794e92c8c896a6bc06e0b36e4c3de3',
   'mojo_devtools_revision': 'd498890dc825363948a5852a2328b8ef937f5af4',
   'mojo_sdk_revision': '8471cd1e603aafb17350b24df8f21f3cb2fee2c9',
 }
@@ -53,23 +54,26 @@
   'src/third_party/boringssl/src':
     'https://boringssl.googlesource.com/boringssl.git' + '@' + Var('boringssl_revision'),
 
+  'src/third_party/icu':
+    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '94e4b770ce2f6065d4261d29c32683a6099b9d93',
+
   'src/third_party/requests/src':
     Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
 
-  'src/third_party/icu':
-    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '94e4b770ce2f6065d4261d29c32683a6099b9d93',
+  'src/third_party/lss':
+    Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
 
   'src/third_party/mojo/src/mojo/public':
     Var('chromium_git') + '/external/github.com/domokit/mojo_sdk.git' + '@' + Var('mojo_sdk_revision'),
 
-  'src/tools/grit':
-    Var('chromium_git') + '/external/grit-i18n.git' + '@' + 'c1b1591a05209c1ad467e845ba8543c22f9072af', # from svn revision 189
+  'src/third_party/mojo_devtools':
+    'https://github.com/domokit/devtools.git' + '@' + Var('mojo_devtools_revision'),
 
   'src/third_party/pyelftools':
     Var('chromium_git') + '/chromiumos/third_party/pyelftools.git' + '@' + '19b3e610c86fcadb837d252c794cb5e8008826ae',
 
-  'src/third_party/mojo_devtools':
-    'https://github.com/domokit/devtools.git' + '@' + Var('mojo_devtools_revision'),
+  'src/tools/grit':
+    Var('chromium_git') + '/external/grit-i18n.git' + '@' + 'c1b1591a05209c1ad467e845ba8543c22f9072af', # from svn revision 189
 
   'src/url':
     Var('chromium_git') + '/external/github.com/domokit/gurl' + '@' + Var('gurl_revision'),
diff --git a/mojo/services/network/http_connection_impl.cc b/mojo/services/network/http_connection_impl.cc
index f9c3583..189a3e1 100644
--- a/mojo/services/network/http_connection_impl.cc
+++ b/mojo/services/network/http_connection_impl.cc
@@ -364,11 +364,11 @@
       //
       // TODO(yzshen): Consider adding to net::HttpServerResponseInfo a simple
       // setter for body which doesn't fiddle with headers.
-      if (base::strcasecmp(header.name.data(),
-                           net::HttpRequestHeaders::kContentLength) == 0) {
+      if (base::EqualsCaseInsensitiveASCII(
+              header.name.data(), net::HttpRequestHeaders::kContentLength))
         continue;
-      } else if (base::strcasecmp(header.name.data(),
-                                  net::HttpRequestHeaders::kContentType) == 0) {
+      if (base::EqualsCaseInsensitiveASCII(
+              header.name.data(), net::HttpRequestHeaders::kContentType)) {
         content_type = header.value;
         continue;
       }
diff --git a/net/dns/mdns_client.h b/net/dns/mdns_client.h
index 675f8de..1c75b04 100644
--- a/net/dns/mdns_client.h
+++ b/net/dns/mdns_client.h
@@ -14,6 +14,9 @@
 #include "net/dns/dns_response.h"
 #include "net/dns/record_parsed.h"
 
+template <typename T>
+class ScopedVector;
+
 namespace net {
 
 class DatagramServerSocket;
diff --git a/third_party/tcmalloc/chromium/src/debugallocation.cc b/third_party/tcmalloc/chromium/src/debugallocation.cc
index 6a4f286..e0a7322 100644
--- a/third_party/tcmalloc/chromium/src/debugallocation.cc
+++ b/third_party/tcmalloc/chromium/src/debugallocation.cc
@@ -486,7 +486,7 @@
     // the address space could take more.
     static size_t max_size_t = ~0;
     if (size > max_size_t - sizeof(MallocBlock)) {
-      RAW_LOG(ERROR, "Massive size passed to malloc: %"PRIuS"", size);
+      RAW_LOG(ERROR, "Massive size passed to malloc: %" PRIuS "", size);
       return NULL;
     }
     MallocBlock* b = NULL;
@@ -961,15 +961,15 @@
 // This protects MALLOC_TRACE, to make sure its info is atomically written.
 static SpinLock malloc_trace_lock(SpinLock::LINKER_INITIALIZED);
 
-#define MALLOC_TRACE(name, size, addr)                                  \
-  do {                                                                  \
-    if (FLAGS_malloctrace) {                                            \
-      SpinLockHolder l(&malloc_trace_lock);                             \
-      TracePrintf(TraceFd(), "%s\t%"PRIuS"\t%p\t%"GPRIuPTHREAD,         \
-                  name, size, addr, PRINTABLE_PTHREAD(pthread_self())); \
-      TraceStack();                                                     \
-      TracePrintf(TraceFd(), "\n");                                     \
-    }                                                                   \
+#define MALLOC_TRACE(name, size, addr)                                         \
+  do {                                                                         \
+    if (FLAGS_malloctrace) {                                                   \
+      SpinLockHolder l(&malloc_trace_lock);                                    \
+      TracePrintf(TraceFd(), "%s\t%" PRIuS "\t%p\t%" GPRIuPTHREAD, name, size, \
+                  addr, PRINTABLE_PTHREAD(pthread_self()));                    \
+      TraceStack();                                                            \
+      TracePrintf(TraceFd(), "\n");                                            \
+    }                                                                          \
   } while (0)
 
 // ========================================================================= //
@@ -1227,7 +1227,7 @@
   void* ptr = debug_cpp_alloc(size, MallocBlock::kNewType, false);
   MallocHook::InvokeNewHook(ptr, size);
   if (ptr == NULL) {
-    RAW_LOG(FATAL, "Unable to allocate %"PRIuS" bytes: new failed.", size);
+    RAW_LOG(FATAL, "Unable to allocate %" PRIuS " bytes: new failed.", size);
   }
   return ptr;
 }
@@ -1254,7 +1254,7 @@
   void* ptr = debug_cpp_alloc(size, MallocBlock::kArrayNewType, false);
   MallocHook::InvokeNewHook(ptr, size);
   if (ptr == NULL) {
-    RAW_LOG(FATAL, "Unable to allocate %"PRIuS" bytes: new[] failed.", size);
+    RAW_LOG(FATAL, "Unable to allocate %" PRIuS " bytes: new[] failed.", size);
   }
   return ptr;
 }