diff for duplicates of <4F7CFF0C.7020300@gmail.com> diff --git a/a/1.txt b/N1/1.txt index 18aa98f..21ac3aa 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,38 +1,37 @@ -On 2012=E5=B9=B404=E6=9C=8804=E6=97=A5 21:29, Jeff Mahoney wrote: +On 2012年04月04日 21:29, Jeff Mahoney wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 ->=20 +> > On 03/31/2012 03:25 AM, Wang Sheng-Hui wrote: ->> If __GFP_WAIT is set in the mask, set_extent_bit should return=20 ->> -ENOMEM to its caller to decide what to do on allocation failure,=20 +>> If __GFP_WAIT is set in the mask, set_extent_bit should return +>> -ENOMEM to its caller to decide what to do on allocation failure, >> instead of BUG_ON. >> ->> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> ---=20 +>> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> --- >> fs/btrfs/extent_io.c | 3 ++- 1 files changed, 2 insertions(+), 1 >> deletions(-) >> >> diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index >> b67814c..fd2411e 100644 --- a/fs/btrfs/extent_io.c +++ >> b/fs/btrfs/extent_io.c @@ -720,7 +720,8 @@ int ->> set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,=20 ->> again: if (!prealloc && (mask & __GFP_WAIT)) { prealloc =3D +>> set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end, +>> again: if (!prealloc && (mask & __GFP_WAIT)) { prealloc = >> alloc_extent_state(mask); - BUG_ON(!prealloc); + if (!prealloc) + >> return -ENOMEM; } >> >> spin_lock(&tree->lock); ->=20 +> > Hi Sheng-Hui - ->=20 +> > Do you have a follow-on series to this? With the exception of the -> set_extent_dirty call in end_bio_extent_readpage, every set_extent_bi= -t +> set_extent_dirty call in end_bio_extent_readpage, every set_extent_bit > caller uses GFP_NOFS, which includes __GFP_WAIT. If we return a > failure here, we need to catch the failure in the call sites. > Otherwise, the failure will just be ignored and we'll end up with an > inconsistent extent state tree. ->=20 +> > - -Jeff ->=20 +> Hi Jeff, @@ -42,13 +41,13 @@ Currently we can skip it, I think. Thanks, Sheng-Hui -> - --=20 +> - -- > Jeff Mahoney > SUSE Labs > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v2.0.18 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ ->=20 +> > iQIcBAEBAgAGBQJPfEzIAAoJEB57S2MheeWyqcoP/RagYePToMYOdgjjxVz2cwkf > BLT5B0KWWaJa0KtEOpgQATmldmA4CCq6WmC7R/Omy1q9RD75rheKxaxuQY35NTFe > czBSfVr3VeMy1A6dIK+wHOiAfheuT90xSgXJJMpdkjHmNjEA1g2nupAFltUE/L70 @@ -61,5 +60,5 @@ Sheng-Hui > eadns62DYFZyzKk4/jP/8Rjygc4YM/T2F9qb+SX3hWGhIIZiz5qOxjgBZy91i+84 > W+DDUHjZPU+O14nNlKFA3INGS9823ENklRkzpNUhLx7ffrCLOAS73O2rzHcaSmtk > FSDWO4EqxIAi4t3LoL14 -> =3DPxwh +> =Pxwh > -----END PGP SIGNATURE----- diff --git a/a/content_digest b/N1/content_digest index e697398..e4f4f49 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -9,41 +9,40 @@ " linux-kernel@vger.kernel.org\0" "\00:1\0" "b\0" - "On 2012=E5=B9=B404=E6=9C=8804=E6=97=A5 21:29, Jeff Mahoney wrote:\n" + "On 2012\345\271\26404\346\234\21004\346\227\245 21:29, Jeff Mahoney wrote:\n" "> -----BEGIN PGP SIGNED MESSAGE-----\n" "> Hash: SHA1\n" - ">=20\n" + "> \n" "> On 03/31/2012 03:25 AM, Wang Sheng-Hui wrote:\n" - ">> If __GFP_WAIT is set in the mask, set_extent_bit should return=20\n" - ">> -ENOMEM to its caller to decide what to do on allocation failure,=20\n" + ">> If __GFP_WAIT is set in the mask, set_extent_bit should return \n" + ">> -ENOMEM to its caller to decide what to do on allocation failure, \n" ">> instead of BUG_ON.\n" ">>\n" - ">> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> ---=20\n" + ">> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> --- \n" ">> fs/btrfs/extent_io.c | 3 ++- 1 files changed, 2 insertions(+), 1\n" ">> deletions(-)\n" ">>\n" ">> diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index\n" ">> b67814c..fd2411e 100644 --- a/fs/btrfs/extent_io.c +++\n" ">> b/fs/btrfs/extent_io.c @@ -720,7 +720,8 @@ int\n" - ">> set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,=20\n" - ">> again: if (!prealloc && (mask & __GFP_WAIT)) { prealloc =3D\n" + ">> set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end, \n" + ">> again: if (!prealloc && (mask & __GFP_WAIT)) { prealloc =\n" ">> alloc_extent_state(mask); -\t\tBUG_ON(!prealloc); +\t\tif (!prealloc) +\n" ">> return -ENOMEM; }\n" ">>\n" ">> spin_lock(&tree->lock);\n" - ">=20\n" + "> \n" "> Hi Sheng-Hui -\n" - ">=20\n" + "> \n" "> Do you have a follow-on series to this? With the exception of the\n" - "> set_extent_dirty call in end_bio_extent_readpage, every set_extent_bi=\n" - "t\n" + "> set_extent_dirty call in end_bio_extent_readpage, every set_extent_bit\n" "> caller uses GFP_NOFS, which includes __GFP_WAIT. If we return a\n" "> failure here, we need to catch the failure in the call sites.\n" "> Otherwise, the failure will just be ignored and we'll end up with an\n" "> inconsistent extent state tree.\n" - ">=20\n" + "> \n" "> - -Jeff\n" - ">=20\n" + "> \n" "\n" "Hi Jeff,\n" "\n" @@ -53,13 +52,13 @@ "Thanks,\n" "Sheng-Hui\n" "\n" - "> - --=20\n" + "> - -- \n" "> Jeff Mahoney\n" "> SUSE Labs\n" "> -----BEGIN PGP SIGNATURE-----\n" "> Version: GnuPG v2.0.18 (GNU/Linux)\n" "> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/\n" - ">=20\n" + "> \n" "> iQIcBAEBAgAGBQJPfEzIAAoJEB57S2MheeWyqcoP/RagYePToMYOdgjjxVz2cwkf\n" "> BLT5B0KWWaJa0KtEOpgQATmldmA4CCq6WmC7R/Omy1q9RD75rheKxaxuQY35NTFe\n" "> czBSfVr3VeMy1A6dIK+wHOiAfheuT90xSgXJJMpdkjHmNjEA1g2nupAFltUE/L70\n" @@ -72,7 +71,7 @@ "> eadns62DYFZyzKk4/jP/8Rjygc4YM/T2F9qb+SX3hWGhIIZiz5qOxjgBZy91i+84\n" "> W+DDUHjZPU+O14nNlKFA3INGS9823ENklRkzpNUhLx7ffrCLOAS73O2rzHcaSmtk\n" "> FSDWO4EqxIAi4t3LoL14\n" - "> =3DPxwh\n" + "> =Pxwh\n" > -----END PGP SIGNATURE----- -bc734079836a802f9d41448adb1d0fb902deaca4ef71f2a551e58966d4454205 +f5cc99ab1098aa7f58f8180a70c90b9a8811a3e8e2e75ac92eb6c4f4f889696e
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.