{"action":"created","issue":{"url":"https://api.github.com/repos/zfsonlinux/zfs/issues/7921","repository_url":"https://api.github.com/repos/zfsonlinux/zfs","labels_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/7921/labels{/name}","comments_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/7921/comments","events_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/7921/events","html_url":"https://github.com/zfsonlinux/zfs/pull/7921","id":361012437,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE2MDkxMjU5","number":7921,"title":"Improved error handling for extreme rewinds","user":{"login":"behlendorf","id":148917,"node_id":"MDQ6VXNlcjE0ODkxNw==","avatar_url":"https://avatars2.githubusercontent.com/u/148917?v=4","gravatar_id":"","url":"https://api.github.com/users/behlendorf","html_url":"https://github.com/behlendorf","followers_url":"https://api.github.com/users/behlendorf/followers","following_url":"https://api.github.com/users/behlendorf/following{/other_user}","gists_url":"https://api.github.com/users/behlendorf/gists{/gist_id}","starred_url":"https://api.github.com/users/behlendorf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/behlendorf/subscriptions","organizations_url":"https://api.github.com/users/behlendorf/orgs","repos_url":"https://api.github.com/users/behlendorf/repos","events_url":"https://api.github.com/users/behlendorf/events{/privacy}","received_events_url":"https://api.github.com/users/behlendorf/received_events","type":"User","site_admin":false},"labels":[{"id":1061515916,"node_id":"MDU6TGFiZWwxMDYxNTE1OTE2","url":"https://api.github.com/repos/zfsonlinux/zfs/labels/Status:%20Code%20Review%20Needed","name":"Status: Code Review Needed","color":"e6e600","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-09-17T19:37:21Z","updated_at":"2018-10-12T07:00:25Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/7921","html_url":"https://github.com/zfsonlinux/zfs/pull/7921","diff_url":"https://github.com/zfsonlinux/zfs/pull/7921.diff","patch_url":"https://github.com/zfsonlinux/zfs/pull/7921.patch"},"body":"### Motivation and Context\r\n\r\nIt's possible to hit either of these two ASSERTs when importing a damaged\r\nusing the extreme rewind functionality.  This should be handled gracefully\r\nas was done in e927fc8.  User are unlikely to encounter this failure mode,\r\nbut the ZTS tests do stress these call paths with debugging enabled.\r\nSee stacks below.\r\n\r\n### Description\r\n\r\nThe obsolete space map and obsolete counts objects may not be\r\naccessible from the vdev's ZAP when it has been damaged.  This may\r\nbe the case when performing an extreme rewind to import the pool.\r\nIt should be gracefully handled in the same way as e927fc8a5.\r\n\r\n\r\n```\r\n[ 6623.289194] VERIFY(err == 0 || err == 2) failed\r\n[ 6623.293600] PANIC at vdev_indirect.c:889:vdev_obsolete_sm_object()\r\n[ 6623.298872] Showing stack for process 7648\r\n[ 6623.298876] CPU: 0 PID: 7648 Comm: zpool Tainted: P           OE    4.15.0-1007-aws #7-Ubuntu\r\n[ 6623.298877] Hardware name: Xen HVM domU, BIOS 4.2.amazon 08/24/2006\r\n[ 6623.298879] Call Trace:\r\n[ 6623.298889]  dump_stack+0x63/0x8b\r\n[ 6623.298902]  spl_dumpstack+0x29/0x30 [spl]\r\n[ 6623.298909]  spl_panic+0xc8/0x110 [spl]\r\n[ 6623.299128]  vdev_obsolete_sm_object+0xe8/0xf0 [zfs]\r\n[ 6623.299202]  vdev_load+0x93/0x470 [zfs]\r\n[ 6623.299355]  vdev_load+0x43/0x470 [zfs]\r\n[ 6623.299588]  spa_ld_load_vdev_metadata+0xbb/0x12d [zfs]\r\n[ 6623.299660]  spa_load_impl+0x177/0x3e0 [zfs]\r\n[ 6623.299735]  spa_load+0x4e/0xf0 [zfs]\r\n[ 6623.299807]  spa_tryimport+0x11c/0x550 [zfs]\r\n[ 6623.299896]  zfs_ioc_pool_tryimport+0x64/0xc0 [zfs]\r\n[ 6623.299979]  zfsdev_ioctl+0x5bf/0x690 [zfs]\r\n[ 6623.299995]  do_vfs_ioctl+0xa8/0x630\r\n[ 6623.300013]  SyS_ioctl+0x79/0x90\r\n[ 6623.300023]  do_syscall_64+0x73/0x130\r\n```\r\n\r\n### How Has This Been Tested?\r\n\r\nLocally compiled, pending additions testing by the bot which do occasionally hit this.\r\n\r\nhttp://build.zfsonlinux.org/builders/Ubuntu%2018.04%20x86_64%20%28TEST%29/builds/1186/steps/shell_9/logs/console\r\n\r\n### Types of changes\r\n<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->\r\n- [x] Bug fix (non-breaking change which fixes an issue)\r\n- [ ] New feature (non-breaking change which adds functionality)\r\n- [ ] Performance enhancement (non-breaking change which improves efficiency)\r\n- [ ] Code cleanup (non-breaking change which makes code smaller or more readable)\r\n- [ ] Breaking change (fix or feature that would cause existing functionality to change)\r\n- [ ] Documentation (a change to man pages or other documentation)\r\n\r\n### Checklist:\r\n<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->\r\n- [x] My code follows the ZFS on Linux [code style requirements](https://github.com/zfsonlinux/zfs/blob/master/.github/CONTRIBUTING.md#coding-conventions).\r\n- [ ] I have updated the documentation accordingly.\r\n- [x] I have read the [**contributing** document](https://github.com/zfsonlinux/zfs/blob/master/.github/CONTRIBUTING.md).\r\n- [ ] I have added [tests](https://github.com/zfsonlinux/zfs/tree/master/tests) to cover my changes.\r\n- [x] All new and existing tests passed.\r\n- [x] All commit messages are properly formatted and contain [`Signed-off-by`](https://github.com/zfsonlinux/zfs/blob/master/.github/CONTRIBUTING.md#signed-off-by).\r\n- [ ] Change has been approved by a ZFS on Linux member.\r\n"},"comment":{"url":"https://api.github.com/repos/zfsonlinux/zfs/issues/comments/429225329","html_url":"https://github.com/zfsonlinux/zfs/pull/7921#issuecomment-429225329","issue_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/7921","id":429225329,"node_id":"MDEyOklzc3VlQ29tbWVudDQyOTIyNTMyOQ==","user":{"login":"codecov[bot]","id":22429695,"node_id":"MDM6Qm90MjI0Mjk2OTU=","avatar_url":"https://avatars2.githubusercontent.com/in/254?v=4","gravatar_id":"","url":"https://api.github.com/users/codecov%5Bbot%5D","html_url":"https://github.com/apps/codecov","followers_url":"https://api.github.com/users/codecov%5Bbot%5D/followers","following_url":"https://api.github.com/users/codecov%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/codecov%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/codecov%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codecov%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/codecov%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/codecov%5Bbot%5D/repos","events_url":"https://api.github.com/users/codecov%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/codecov%5Bbot%5D/received_events","type":"Bot","site_admin":false},"created_at":"2018-10-12T07:00:25Z","updated_at":"2018-10-12T07:00:25Z","author_association":"NONE","body":"# [Codecov](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=h1) Report\n> Merging [#7921](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=desc) into [master](https://codecov.io/gh/zfsonlinux/zfs/commit/5d43cc9a59d61aea37a1236e9d28628856030947?src=pr&el=desc) will **increase** coverage by `11.72%`.\n> The diff coverage is `82.35%`.\n\n[![Impacted file tree graph](https://codecov.io/gh/zfsonlinux/zfs/pull/7921/graphs/tree.svg?width=650&token=NGfxvvG2io&height=150&src=pr)](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=tree)\n\n```diff\n@@             Coverage Diff             @@\n##           master    #7921       +/-   ##\n===========================================\n+ Coverage   66.74%   78.47%   +11.72%     \n===========================================\n  Files         314      378       +64     \n  Lines       97292   114240    +16948     \n===========================================\n+ Hits        64934    89645    +24711     \n+ Misses      32358    24595     -7763\n```\n\n| Flag | Coverage Δ | |\n|---|---|---|\n| #kernel | `78.73% <74%> (?)` | |\n| #user | `67.61% <76.47%> (+0.87%)` | :arrow_up: |\n\n------\n\n[Continue to review full report at Codecov](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=continue).\n> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)\n> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`\n> Powered by [Codecov](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=footer). Last update [5d43cc9...5cb7417](https://codecov.io/gh/zfsonlinux/zfs/pull/7921?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).\n"}}
{"actor":{"display_login":"codecov"}}