New issue
Advanced search Search tips
Starred by 38 users
Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug


Sign in to add a comment
Use base::ThreadRestrictions to catch disk IO on the UI/IO threads
Project Member Reported by evan@chromium.org, Oct 21 2010 Back to list
See the header (base/thread_restrictions.h) for more.  In brief, we mark the UI/IO threads as special (no disk access allowed) during startup, then check if we're on one of the bad threads in functions like fopen().

This bug is to track progress on enabling it for all threads and platforms.
 
Comment 1 by evan@chromium.org, Oct 22 2010
Blockedon: 24163
Comment 2 by bugdro...@gmail.com, Oct 22 2010
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63580

------------------------------------------------------------------------
r63580 | evan@chromium.org | Fri Oct 22 15:41:51 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_http_job.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_util.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/extension_resource.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_posix.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/autoupdate_interceptor.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_cloud_uitest.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/socket/ssl_client_socket_nss.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/shared_memory_posix.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.h?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=63580&r2=63579&pathrev=63580
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/service/service_process_control.cc?r1=63580&r2=63579&pathrev=63580

Thread IO safety: annotate file_util, and block IO thread from doing IO

- Mark functions in file_util_posix as requiring permission to perform
  disk actions.
- Mark the IO thread as disallowed from performing disk actions.
- Temporarily work around the protections in places where we currently
  have bugs.

BUG=59847, 59849 , 60207 ,60211
TEST=no dchecks in debug builds

Review URL: http://codereview.chromium.org/3872002
------------------------------------------------------------------------
Comment 3 by bugdro...@gmail.com, Oct 23 2010
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63600

------------------------------------------------------------------------
r63600 | evan@chromium.org | Fri Oct 22 17:07:32 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_http_job.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_util.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/extension_resource.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_posix.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/autoupdate_interceptor.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_cloud_uitest.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/socket/ssl_client_socket_nss.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/shared_memory_posix.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.h?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=63600&r2=63599&pathrev=63600
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/service/service_process_control.cc?r1=63600&r2=63599&pathrev=63600

Thread IO safety: annotate file_util, and block IO thread from doing IO

- Mark functions in file_util_posix as requiring permission to perform
  disk actions.
- Mark the IO thread as disallowed from performing disk actions.
- Temporarily work around the protections in places where we currently
  have bugs.

BUG=59847, 59849 , 60207 ,60211
TEST=no dchecks in debug builds

Review URL: http://codereview.chromium.org/3872002
------------------------------------------------------------------------
Comment 4 by bugdro...@gmail.com, Oct 23 2010
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63630

------------------------------------------------------------------------
r63630 | isherman@chromium.org | Fri Oct 22 21:09:46 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_http_job.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_util.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/extension_resource.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_posix.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/autoupdate_interceptor.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_cloud_uitest.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/socket/ssl_client_socket_nss.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/shared_memory_posix.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.h?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=63630&r2=63629&pathrev=63630
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/service/service_process_control.cc?r1=63630&r2=63629&pathrev=63630

Revert 63600 - Thread IO safety: annotate file_util, and block IO thread from doing IO

Reverting because this breaks the ChromiumOS (dbg) builder.

- Mark functions in file_util_posix as requiring permission to perform
  disk actions.
- Mark the IO thread as disallowed from performing disk actions.
- Temporarily work around the protections in places where we currently
  have bugs.

BUG=59847, 59849 , 60207 ,60211
TEST=no dchecks in debug builds

Review URL: http://codereview.chromium.org/3872002

TBR=evan@chromium.org
Review URL: http://codereview.chromium.org/3983005
------------------------------------------------------------------------
Comment 5 by evan@chromium.org, Oct 23 2010
Blockedon: 60394
Comment 6 by bugdro...@gmail.com, Oct 23 2010
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63636

------------------------------------------------------------------------
r63636 | evan@chromium.org | Fri Oct 22 22:19:20 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/sys_info_chromeos.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_http_job.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/url_request_mock_util.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/extension_resource.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_posix.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/autoupdate_interceptor.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_cloud_uitest.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/socket/ssl_client_socket_nss.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/shared_memory_posix.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/thread_restrictions.h?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=63636&r2=63635&pathrev=63636
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/service/service_process_control.cc?r1=63636&r2=63635&pathrev=63636

Thread IO safety: annotate file_util, and block IO thread from doing IO

- Mark functions in file_util_posix as requiring permission to perform
  disk actions.
- Mark the IO thread as disallowed from performing disk actions.
- Temporarily work around the protections in places where we currently
  have bugs.

BUG=59847, 59849 , 60207 ,60211, 60394 
TEST=no dchecks in debug builds

Review URL: http://codereview.chromium.org/3872002
------------------------------------------------------------------------
Comment 7 by evan@chromium.org, Oct 25 2010
Blockedon: 60634
Comment 8 by evan@chromium.org, Oct 25 2010
Blockedon: 60630
Comment 9 by evan@chromium.org, Oct 25 2010
Blockedon: 60641 60643
Comment 10 by evan@chromium.org, Oct 26 2010
Blockedon: 60825
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63986

------------------------------------------------------------------------
r63986 | evan@chromium.org | Tue Oct 26 17:05:47 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_init.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/dom_ui/options/import_data_handler.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/crx_installer.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/nss_util.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/spellcheck_host.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_shutdown.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/visitedlink_master.cc?r1=63986&r2=63985&pathrev=63986

ThreadRestrictions: disallow blocking IO on the UI thread

This patch sets the "disallow IO" flag after the UI thread has
started, and then whitelists in the many places where we're
accidentally doing IO from the UI thread.  (I've filed bugs
on all of those cases.)

BUG=59847,60630, 60641 ,60211, 60634 , 60643 ,24163, 60825 

Review URL: http://codereview.chromium.org/4146004
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=63986

------------------------------------------------------------------------
r63986 | evan@chromium.org | Tue Oct 26 17:05:47 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_init.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/dom_ui/options/import_data_handler.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/crx_installer.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/nss_util.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/spellcheck_host.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_shutdown.cc?r1=63986&r2=63985&pathrev=63986
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/visitedlink_master.cc?r1=63986&r2=63985&pathrev=63986

ThreadRestrictions: disallow blocking IO on the UI thread

This patch sets the "disallow IO" flag after the UI thread has
started, and then whitelists in the many places where we're
accidentally doing IO from the UI thread.  (I've filed bugs
on all of those cases.)

BUG=59847,60630, 60641 ,60211, 60634 , 60643 ,24163, 60825 

Review URL: http://codereview.chromium.org/4146004
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64094

------------------------------------------------------------------------
r64094 | thakis@chromium.org | Wed Oct 27 10:36:34 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64094&r2=64093&pathrev=64094

Mac: turn on file access checks for the UI thread.

BUG=60211
TEST=bots

Review URL: http://codereview.chromium.org/4144003
------------------------------------------------------------------------
Blockedon: 60950
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64100

------------------------------------------------------------------------
r64100 | evan@chromium.org | Wed Oct 27 11:23:09 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64100&r2=64099&pathrev=64100
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=64100&r2=64099&pathrev=64100

Don't verify thread IO safety on ChromeOS for now.

It needs someone to sit down and look through the bugs it finds;
I didn't intend to turn it on for ChromeOS.

BUG=60211

Review URL: http://codereview.chromium.org/4152006
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64120

------------------------------------------------------------------------
r64120 | nick@chromium.org | Wed Oct 27 12:36:04 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64120&r2=64119&pathrev=64120

Revert 64094 - Mac: turn on file access checks for the UI thread.

BUG=60211
TEST=bots

Review URL: http://codereview.chromium.org/4144003

TBR=thakis@chromium.org
Review URL: http://codereview.chromium.org/4208001
------------------------------------------------------------------------
Comment 17 by evan@chromium.org, Oct 27 2010
Blockedon: 60988
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64152

------------------------------------------------------------------------
r64152 | nick@chromium.org | Wed Oct 27 14:37:32 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64152&r2=64151&pathrev=64152

Re-land 64094 - Mac: turn on file access checks for the UI thread.

BUG=60211
TEST=bots

Review URL: http://codereview.chromium.org/4144003

TBR=thakis@chromium.org
Review URL: http://codereview.chromium.org/4208001

TBR=nick@chromium.org
Review URL: http://codereview.chromium.org/4139005
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64249

------------------------------------------------------------------------
r64249 | thakis@chromium.org | Thu Oct 28 08:49:08 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=64249&r2=64248&pathrev=64249

Mac: turn on file access checks for the IO thread.

BUG=60211
TEST=trybots

Review URL: http://codereview.chromium.org/4097010
------------------------------------------------------------------------
Comment 20 by evan@chromium.org, Oct 28 2010
 Issue 21924  has been merged into this issue.
Comment 21 by evan@chromium.org, Oct 28 2010
Blockedon: 61102
Comment 22 by evan@chromium.org, Oct 28 2010
 Issue 21924  comment 23 has a bunch of counts and lists of calls from Chase.  Would be good to verify this picks up all of those.
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64309

------------------------------------------------------------------------
r64309 | thakis@chromium.org | Thu Oct 28 13:47:45 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_mac.mm?r1=64309&r2=64308&pathrev=64309

Mac: Add AssertIOAllowed() call to CopyFile()

BUG=60211
TEST=trybots

Review URL: http://codereview.chromium.org/4133005
------------------------------------------------------------------------
Blockedon: 61136
Comment 25 by e...@chromium.org, Oct 28 2010
Blockedon: 61135
Comment 26 by sh...@chromium.org, Oct 28 2010
Blockedon: 61151
Comment 27 by evan@chromium.org, Nov 3 2010
Blockedon: 61775
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64960

------------------------------------------------------------------------
r64960 | jam@chromium.org | Wed Nov 03 13:36:28 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/ssl_config_service_win.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/dom_ui/shared_resources_data_source.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_version_info_win.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_version_info.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_win.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win_util.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/tab_contents.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/base.gypi?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/proxy/proxy_config_service_win.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/platform_file_win.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win/registry.cc?r1=64960&r2=64959&pathrev=64960
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/download/save_package.cc?r1=64960&r2=64959&pathrev=64960

Turn on file access checks on Win.

BUG=60211
Review URL: http://codereview.chromium.org/4222005
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=64974

------------------------------------------------------------------------
r64974 | rafaelw@chromium.org | Wed Nov 03 15:06:07 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/ssl_config_service_win.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/dom_ui/shared_resources_data_source.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_version_info_win.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_version_info.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_win.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win_util.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/tab_contents.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/base.gypi?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/proxy/proxy_config_service_win.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/platform_file_win.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win/registry.cc?r1=64974&r2=64973&pathrev=64974
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/download/save_package.cc?r1=64974&r2=64973&pathrev=64974

Revert 64960 - Turn on file access checks on Win.

BUG=60211
Review URL: http://codereview.chromium.org/4222005

TBR=jam@chromium.org
Review URL: http://codereview.chromium.org/4431001
------------------------------------------------------------------------
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=65075

------------------------------------------------------------------------
r65075 | jam@chromium.org | Thu Nov 04 10:41:00 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/ssl_config_service_win.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/dom_ui/shared_resources_data_source.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_version_info_win.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/browser_theme_pack.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/extensions/sandboxed_extension_unpacker.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/io_thread.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_version_info.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/plugins/pepper_url_request_info.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/file_util_win.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/url_request/url_request_file_job.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win_util.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/tab_contents.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/base.gypi?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/platform_file_win.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/proxy/proxy_config_service_win.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/download/download_util.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/win/registry.cc?r1=65075&r2=65074&pathrev=65075
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/download/save_package.cc?r1=65075&r2=65074&pathrev=65075

Turn on file access checks on Win.

BUG=60211

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=64960
Review URL: http://codereview.chromium.org/4222005
------------------------------------------------------------------------
Comment 31 by jam@chromium.org, Nov 5 2010
Blockedon: 61638 61644 61827 61838 61922 61996
Blockedon: 62019
Blockedon: 62121
Blockedon: 62098
Blockedon: 62328
Blockedon: 62337
Blockedon: 62626
Blockedon: 62601
Blockedon: 63335
Blockedon: 63690
Comment 41 by jam@chromium.org, Dec 2 2010
Note: this is from sanjeevr from the chromium-dev thread titled "PSA: Threading Techniques"

"There is no explicit cache of the registry maintained in usermode. The registry is essentially a file system within a file. There is a cache maintained in the kernel. This cache is provided by the NT Cache Manager which is the same as the cache maintained for memory mapped files. The cache is lazily flushed out to disk (unless you force this with a RegFlushKey call). From a user-mode programmer's perspective reading/writing to/from the registry is similar to reading/writing from a memory mapped disk file. However there are also several locks that are taken by the Configuration Manager for registry cell updates. And, of course, there is an access check every time you open a registry key (which involves looking at the thread or process token and reading the security descriptor of the key)."
Blockedon: 69936
Blockedon: 70097 70119
Blockedon: 70131 70139
Blockedon: -70139 chromium-os:11103
Blockedon: 61143
Blockedon: chromium-os:11102
Blockedon: chromium-os:11109
Blockedon: chromium-os:11110
Blockedon: 70380
Project Member Comment 52 by bugdroid1@chromium.org, Jan 24 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=72331

------------------------------------------------------------------------
r72331 | nkostylev@chromium.org | Mon Jan 24 06:37:08 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/logging_chrome.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/base/nss_util.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/help_app_launcher.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/login_utils.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/metrics_cros_settings_provider.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/ownership_service.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/apply_services_customization.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/language_switch_menu.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/update_screen.cc?r1=72331&r2=72330&pathrev=72331
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/login/wizard_controller.cc?r1=72331&r2=72330&pathrev=72331

Temporary whitelist several cases of disk I/O on the UI threads in cros.

BUG=60211,  70097 ,  70119 ,  70131 ,  62626 , 61143, chromium-os:11102, chromium-os:11104, chromium-os:11105, chromium-os:11106, chromium-os:11109
TEST=bots

Review URL: http://codereview.chromium.org/6272012
------------------------------------------------------------------------
Project Member Comment 53 by bugdroid1@chromium.org, Jan 25 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=72487

------------------------------------------------------------------------
r72487 | nkostylev@chromium.org | Tue Jan 25 05:36:42 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=72487&r2=72486&pathrev=72487

Turn on disk I/O access checks for the UI thread on ChromeOS.

BUG=60211
TEST=bots

Review URL: http://codereview.chromium.org/6265024
------------------------------------------------------------------------
Blockedon: 70898
Adding WebResourceServiceUtil::CanShowPromo.
Blockedon: chromium-os:11392
Blockedon: 71258
Blockedon: chromium-os:11535
Blockedon: 72636 72637
Blockedon: 72662
Blockedon: 72696
Turned on disk I/O access on IOThread for CrOS
http://src.chromium.org/viewvc/chrome?view=rev&revision=74618
Comment 63 by jam@chromium.org, Mar 8 2011
Blockedon: 75232
Project Member Comment 64 by bugdroid1@chromium.org, Mar 9 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=77514

------------------------------------------------------------------------
r77514 | willchan@chromium.org | Wed Mar 09 12:32:25 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/file_stream_win.cc?r1=77514&r2=77513&pathrev=77514
 M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/file_stream_posix.cc?r1=77514&r2=77513&pathrev=77514

Add ThreadRestrictions to FileStream.

BUG=60211
TEST=none

Review URL: http://codereview.chromium.org/6649012
------------------------------------------------------------------------
Labels: -Jank bulkmove TaskForce-Jank
See the header (base/thread_restrictions.h) for more.  In brief, we mark the UI/IO threads as special (no disk access allowed) during startup, then check if we're on one of the bad threads in functions like fopen().

This bug is to track progress on enabling it for all threads and platforms.
Blockedon: 79458
about:version also hits the registry on the UI thread.
Comment 67 by js...@chromium.org, Apr 21 2011
Blockedon: 80089
Comment 68 by tony@chromium.org, Jun 3 2011
Blockedon: 84896
Blockedon: 75548
Blockedon: chromium-os:20113
Comment 71 by evan@chromium.org, Sep 20 2011
Owner: ----
Status: Available
Adding the About box to the mix, which calls CreateVersionString on the UI thread.
Re #72: That would be  issue 101699 .
Blocking: chromium:126644
Comment 76 by evan@chromium.org, Nov 27 2012
Blockedon: -chromium:24163 -chromium:59847 -chromium:59849 -chromium:60207 -chromium:60394 -chromium:60630 -chromium:60634 -chromium:60641 -chromium:60643 -chromium:60825 -chromium:60950 -chromium:60988 -chromium:61102 -chromium:61135 -chromium:61136 -chromium:61143 -chromium:61151 -chromium:61638 -chromium:61644 -chromium:61775 -chromium:61827 -chromium:61838 -chromium:61922 -chromium:61996 -chromium:62019 -chromium:62098 -chromium:62121 -chromium:62328 -chromium:62337 -chromium:62601 -chromium:62626 -chromium:63335 -chromium:63690 -chromium:66077 -chromium:66082 -chromium:66261 -chromium:66985 -chromium:67044 -chromium:67537 -chromium:67664 -chromium:69516 -chromium:69936 -chromium:70097 -chromium:70119 -chromium:70131 -chromium:70380 -chromium:70898 -chromium:71258 -chromium:72001 -chromium:72286 -chromium:72507 -chromium:72636 -chromium:72637 -chromium:72696 -chromium:72740 -chromium:75232 -chromium:75548 -chromium:79458 -chromium:80089 -chromium:84896 -chromium-os:11102 -chromium-os:11103 -chromium-os:11104 -chromium-os:11105 -chromium-os:11106 -chromium-os:11109 -chromium-os:11110 -chromium-os:11392 -chromium-os:11535 -chromium-os:20113 chromium:24163 chromium:59847 chromium:59849 chromium:60207 chromium:60394 chromium:60630 chromium:60634 chromium:60641 chromium:60643 chromium:60825 chromium:60950 chromium:60988 chromium:61102 chromium:61135 chromium:61136 chromium:61143 chromium:61151 chromium:61638 chromium:61644 chromium:61775 chromium:61827 chromium:61838 chromium:61922 chromium:61996 chromium:62019 chromium:62098 chromium:62121 chromium:62328 chromium:62337 chromium:62601 chromium:62626 chromium:63335 chromium:63690 chromium:66077 chromium:66082 chromium:66261 chromium:66985 chromium:67044 chromium:67537 chromium:67664 chromium:69516 chromium:69936 chromium:70097 chromium:70119 chromium:70131 chromium:70380 chromium:70898 chromium:71258 chromium:72001 chromium:72286 chromium:72507 chromium:72636 chromium:72637 chromium:72696 chromium:72740 chromium:75232 chromium:75548 chromium:79458 chromium:80089 chromium:84896 chromium-os:11102 chromium-os:11103 chromium-os:11104 chromium-os:11105 chromium-os:11106 chromium-os:11109 chromium-os:11110 chromium-os:11392 chromium-os:11535 chromium-os:20113
Project Member Comment 77 by bugdroid1@chromium.org, Mar 10 2013
Labels: -Area-Internals Cr-Internals
Labels: Hotlist-Slow
Project Member Comment 79 by sheriffbot@chromium.org, Jun 25 2016
Labels: Hotlist-Recharge-Cold
Status: Untriaged
This issue has been available for more than 365 days, and should be re-evaluated. Hotlist-Recharge-Cold label is added for tracking. Please re-triage this issue.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Cc: -gwilson@chromium.org -cmp@chromium.org
Labels: -Hotlist-Recharge-Cold
Sign in to add a comment