New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 734727 link

Starred by 1 user

Issue metadata

Status: Archived
Owner:
Last visit > 30 days ago
Closed: Jul 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Linux Kernel merge request: CL:539817

Project Member Reported by andreyu@google.com, Jun 19 2017

Issue description


CL:539817 fixes a bug in kernel in ext4 code which can lead to kernel crash. This is similar to  http://crbug.com/710336  but for unencrypted FS.

This bug is a merge-request for current stable and beta branches.
 
Project Member

Comment 1 by sheriffbot@chromium.org, Jun 19 2017

Labels: -Merge-Request-60 Hotlist-Merge-Review Merge-Review-60
This bug requires manual review: M60 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 2 by gkihumba@google.com, Jun 21 2017

Labels: merge-app
Is this critical for M59? Will wait for merge to 60 first

Comment 3 by andreyu@google.com, Jun 22 2017

Yes it's important for GCI/COS to get this in the stable branch soon. We have customers who are affected badly. b/62766247 and b/62755874
Project Member

Comment 4 by bugdroid1@chromium.org, Jun 22 2017

Labels: merge-merged-release-R60-9592.B-chromeos-4.4
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/87e57fe3d0c730becf153126668e883e8bdbe552

commit 87e57fe3d0c730becf153126668e883e8bdbe552
Author: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Date: Thu Jun 22 18:49:23 2017

UPSTREAM: ext4: handle the rest of ext4_mb_load_buddy() ENOMEM errors

I've got another report about breaking ext4 by ENOMEM error returned from
ext4_mb_load_buddy() caused by memory shortage in memory cgroup.
This time inside ext4_discard_preallocations().

This patch replaces ext4_error() with ext4_warning() where errors returned
from ext4_mb_load_buddy() are not fatal and handled by caller:
* ext4_mb_discard_group_preallocations() - called before generating ENOSPC,
  we'll try to discard other group or return ENOSPC into user-space.
* ext4_trim_all_free() - just stop trimming and return ENOMEM from ioctl.

Some callers cannot handle errors, thus __GFP_NOFAIL is used for them:
* ext4_discard_preallocations()
* ext4_mb_discard_lg_preallocations()

Fixes: adb7ef600cc9 ("ext4: use __GFP_NOFAIL in ext4_free_blocks()")
Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Andrey Ulanov <andreyu@google.com>
(cherry picked from commit 9651e6b2e20648d04d5e1fe6479a3056047e8781)

BUG=b:62766247
BUG= chromium:734727 
TEST=kernel compiles

Change-Id: I46e4f20688f25508afa77613cfc1ce4d0b2353ca
Reviewed-on: https://chromium-review.googlesource.com/540264
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Commit-Queue: Andrey Ulanov <andreyu@google.com>
Tested-by: Andrey Ulanov <andreyu@google.com>

[modify] https://crrev.com/87e57fe3d0c730becf153126668e883e8bdbe552/fs/ext4/mballoc.c

Labels: -Merge-Review-60
Labels: -Merge-Request-59 Merge-Approved-59
Project Member

Comment 7 by bugdroid1@chromium.org, Jul 5 2017

Labels: merge-merged-release-R59-9460.B-chromeos-4.4
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/00e5e918b8eb011c645fedcdd3ead75e7ca802f4

commit 00e5e918b8eb011c645fedcdd3ead75e7ca802f4
Author: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Date: Wed Jul 05 18:36:47 2017

UPSTREAM: ext4: handle the rest of ext4_mb_load_buddy() ENOMEM errors

I've got another report about breaking ext4 by ENOMEM error returned from
ext4_mb_load_buddy() caused by memory shortage in memory cgroup.
This time inside ext4_discard_preallocations().

This patch replaces ext4_error() with ext4_warning() where errors returned
from ext4_mb_load_buddy() are not fatal and handled by caller:
* ext4_mb_discard_group_preallocations() - called before generating ENOSPC,
  we'll try to discard other group or return ENOSPC into user-space.
* ext4_trim_all_free() - just stop trimming and return ENOMEM from ioctl.

Some callers cannot handle errors, thus __GFP_NOFAIL is used for them:
* ext4_discard_preallocations()
* ext4_mb_discard_lg_preallocations()

Fixes: adb7ef600cc9 ("ext4: use __GFP_NOFAIL in ext4_free_blocks()")
Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Andrey Ulanov <andreyu@google.com>
(cherry picked from commit 9651e6b2e20648d04d5e1fe6479a3056047e8781)

BUG=b:62766247
BUG= chromium:734727 
TEST=kernel compiles

Change-Id: I46e4f20688f25508afa77613cfc1ce4d0b2353ca
Reviewed-on: https://chromium-review.googlesource.com/540265
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Commit-Queue: Andrey Ulanov <andreyu@google.com>
Tested-by: Andrey Ulanov <andreyu@google.com>

[modify] https://crrev.com/00e5e918b8eb011c645fedcdd3ead75e7ca802f4/fs/ext4/mballoc.c

Comment 8 by andreyu@google.com, Jul 5 2017

Status: Fixed (was: Assigned)

Comment 9 by andreyu@google.com, Jul 5 2017

Labels: -Merge-Approved-59
Labels: -Hotlist-Merge-Review

Comment 11 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment