SMB2 IOCTL FSCTL_LMR_REQUEST_RESILIENCY Returns Incorrect Response
Windows 10 System Image Backup to an OmniOS CIFS Share fails with an 0x807800C5 Error (There was a failure in preparing the backup image of one of the volumes in the backup set) - Invalid Parameter. The failure occurs while preparing to write the initial VHDX file to the share. A Wireshark capture on port 445 from the Windows 10 client shows an SMB2 IOCTL FSCTL_LMR_REQUEST_RESILIENCY request with a server response of Error: STATUS_INVALID_PARAMETER instead of STATUS_NOT_SUPPORTED.
Steps to Reproduce:
Create CIFS share on OmniOS r151030
Initiate Windows 10 / Server 2016 backup to share (wbadmin start backup -backupTarget:<OmniOS CIFS Share> -allCritical -vssFull -quiet
Capture network traffic on port 445
Review the capture with Wireshark to see the SMB2 IOCTL FSCTL_LMR_REQUEST_RESILIENCY request and response error code
*Backup fails to complete
Windows 7 Backup to the same OmniOS CIFS share location completes successfully.
Windows 10 Backup to FreeNAS CIFS share completes successfully (STATUS_INVALID_DEVICE_REQUEST response to FSCTL_LMR_REQUEST_RESILIENCY client request)
Windows 10 Backup to OmniOS CIFS share completes successfully when SMBv1 is forced on client/server (sharectrl set -p max_protocol=1 smb)
Updated by Dan McDonald 4 months ago
He said OmniOS r151030. The last proper merge with upstream in that branch was from illumos-gate commit fc8ae2ec4282de7ec96f48e11078345f3dc0ac3d. There have been other commits (including cherrypicks and side-pulls) since then:
everywhere(ws/illumos-omnios)% git log --format=oneline bc81e58970473852c00270e8d2c4bfb195c08923.. 7b36df27d5e3d2c295e8b5276d557fb6a63b701b (HEAD -> r151030, origin/r151030) Merge pull request #473 from citrus-it/kprir30 bad33d12cd18e814fa8fcb9de1cf9ae4a3179ce9 OS-7753 THREAD_KPRI_RELEASE does nothing of the sort fb6e05104bbce8cd0441d351be6d97d9775a676d Merge pull request #471 from citrus-it/hvata 1219bc2266eea9bec104e089058679524aaa3e36 DLPX-63519 ATA reads timeout after Azure update Reviewed at: http://reviews.delphix.com/r/48492/ 6c4916073baa2df16d70c7fb729516e798b7883b Merge pull request #465 from citrus-it/bmdsr30 4d7099826c6eb100410f176602227d71a5b74356 OS-7801 bhyve should expose MD_CLEAR capability Reviewed by: Robert Mustacchi <email@example.com> Reviewed by: Jerry Jelinek <firstname.lastname@example.org> Approved by: Jerry Jelinek <email@example.com> 632fca26ebe1cb70474aeb6b98f0b040cf7e7c85 Merge pull request #462 from citrus-it/bpr30 22e6227b9254feb2a3c743cd0a177067f334fda5 10597 would like a way to set NMI behavior at boot Reviewed by: Robert Mustacchi <firstname.lastname@example.org> Reviewed by: Andy Fiddaman <email@example.com> Reviewed by: Patrick Mooney <firstname.lastname@example.org> Approved by: Richard Lowe <email@example.com> c8b837b5c3044ff925ed8c8590b1a5e5c048dfda Update Intel microcode to 20190514 release 596a17dcdcf830ce88e912129c0a55bb4b0b0c14 Update mdb ::sec command for mds 371c7f3c7009ea59cdfef1e29a24e7bc1089b7eb OS-7662 need a way to disable SMT 47b0d0c7de50faefe8268f1b92a5da220fd874cc OS-7793 Need mitigation for MDS d34b333de4dc664aa9c893312957d86b0d8308d5 10956 sys-suspend(1M) integration with the x window system needs work Reviewed by: Dan McDonald <firstname.lastname@example.org> Reviewed by: Joshua M. Clulow <email@example.com> Approved by: Robert Mustacchi <firstname.lastname@example.org> e00ad28605edde2720ba4bc7b511e3d8fafe3496 Merge pull request #453 from citrus-it/smbsecr30 f1189fc02c6304e9aa861b82e50f49e5c49b8391 Merge pull request #447 from citrus-it/lxr30 845d4f3458cef0cc316744b81469e01c209da76b Merge pull request #446 from citrus-it/envr30 2e5725cfa9cc84f3999a8d77b2e6906038ee70b3 OS-XXXX add sendmmsg() and recvmmsg() to lx 05f83369e2f205a439f60ef56c781972ba01e627 LX: Handle DNS configuration in Ubuntu 18.04 lx zones 210e6ad982cf3a00b2a6c8e77a31d54a99053c4f Disable SMB printing support when building gate on OmniOS c6d516be81653961b3a39481f4d03cb19feef023 NEX-6258 SMB grants WRITE_ATTRIBUTES when it should not d0e5e7649f24121091e0444a1ccda8477360d4c8 10506 CVE-2019-9579 Access problem with SMB server 3f4a7e496952c05b40f10028eed25c70ceb8c2c6 Merge pull request #442 from citrus-it/backportr30 e3b78243819d1e99a40ac9576b88e822a02135dd Fix osnet dependency 72ce8ec8a28bc2008349eb76cea4d71fa6aab7d4 OS-7409 bhyve does not receive multicast packets Reviewed by: Robert Mustacchi <email@example.com> Reviewed by: Dan McDonald <firstname.lastname@example.org> Approved by: Dan McDonald <email@example.com> 6059410c9738e9a292c0840beb67e38e52767cdf 10698 SMB client fails to connect to MacOS server Reviewed by: Jason King <firstname.lastname@example.org> Reviewed by: Toomas Soome <email@example.com> Reviewed by: Gergő Doma <firstname.lastname@example.org> Approved by: Richard Lowe <email@example.com> bb55960f430c7c854b4e7dd5711a7be98a10ff41 10692 df dumps core Reviewed by: Andy Fiddaman <firstname.lastname@example.org> Reviewed by: Sebastian Wiedenroth <email@example.com> Approved by: Richard Lowe <firstname.lastname@example.org> 2a005830a0896a1797e653645773e48989b7b9de Merge pull request #440 from citrus-it/osnetr30 f7c3d5f2b87454e6842105f082b22b2355579040 Remove dependencies not present on OmniOS 32d720bfc8f36f78e78eaba076a3ec9682c58a83 Merge pull request #437 from citrus-it/dlsr30 a882c5f23c31cec314fefab2bfddad62e70bc202 Revert "BHYVE: OS-4600 vnd can receive packets without checksums" eb8f287e3ded35e881ca1ddc8253404fbb9dcb59 Revert "BHYVE: OS-2340 vnics should support LSO" 69564e573d1cd39d5ed41252274421dbac19be0c Revert "BHYVE: OS-7591 viona should be strict about cksum offsets" 3685ec983d9f5023fa6772f830143f26c405aa29 Revert "BHYVE: OS-7592 viona doesn't zero ULP checksum for HCK_FULLCKSUM" d73f3cf697d8de6b21d47b28f5ee7ff215c48973 Revert "OS-7564 panic in mac_hw_emul()" 417a7c0f29a7fa4d83fdc03efdbc2c4af9c61cd1 Revert "OS-7556 IPv6 packets dropped after crossing MAC-loopback" 223fd40edcd6fc40bc7bda994307f07ed53591af Merge pull request #435 from citrus-it/ipfr30 d60fcd680a0de279abbf8c3fc5cec027b745de99 Add state change hooks for lx zones d75aeaf790f2cec7b20d71d5069016e3ea913f6a Merge pull request #433 from hadfl/expect_r30 9dbcf5db7b262e250c10ba3299fd7a26ed86211b fix expect FMRI for OmniOS 1bcc2b62656e1a9ca42c51e821e09f11061c1ce5 Merge pull request #428 from citrus-it/illumospng a2933408270354e80c69d7b8fe2fb080a192da71 Add smaller version of the illumos logo, rather than rescaling 639d434ceb766d8f4ef41c73874fc9c1ea82b0b9 Merge pull request #427 from citrus-it/joyent_merge/2019032801 43e68f61b093f03e358ccf5386cb0012b75cdbad Update README.OmniOS with last Joyent commit bd247d19086ec608ff0325aac47e8ebf234b2501 OS-7672 recursive mutex enter in ahci 13f8f6005d8326bad765d309b830bb4e50213c2d Merge pull request #426 from citrus-it/upstream_merge/2019032801
There are three obvious SMB ones that got side-pulled:
210e6ad982cf3a00b2a6c8e77a31d54a99053c4f Disable SMB printing support when building gate on OmniOS c6d516be81653961b3a39481f4d03cb19feef023 NEX-6258 SMB grants WRITE_ATTRIBUTES when it should not d0e5e7649f24121091e0444a1ccda8477360d4c8 10506 CVE-2019-9579 Access problem with SMB server
Updated by Gordon Ross 4 months ago
OK, yeah, I see why this error is happening. The current code demands "no fid" for this ioctl. That's incorrect (it uses a fid).
Some of the changes in #1841 reorganize the checks in smb2_ioctl (based on clarifications in the spec. about which ioctl/fsctl codes should be checked for a FID etc.) That happens to fix this.
If you need a fix quickly (before #1841 goes up stream -- it's pending RTI now, btw -- hint hint) you can just
replace ITF_NO_FID with zero on http://src.illumos.org/source/xref/illumos-gate/usr/src/uts/common/fs/smbsrv/smb2_ioctl.c#254
(the table row for FSCTL_LMR_REQUEST_RESILIENCY).
Updated by Electric Monk 4 months ago
- Status changed from New to Closed
- % Done changed from 0 to 100
commit 93bc28dbaee6387120d48b12b3dc1ba5f7418e6e Author: Gordon Ross <email@example.com> Date: 2019-06-04T02:09:35.000Z 1841 SMB dtrace provider is incomplete 11180 SMB2 IOCTL FSCTL_LMR_REQUEST_RESILIENCY Returns Incorrect Response Portions contributed by: Joyce McIntosh <firstname.lastname@example.org> Reviewed by: Evan Layton <email@example.com> Reviewed by: Matt Barden <firstname.lastname@example.org> Reviewed by: Joyce McIntosh <email@example.com> Approved by: Richard Lowe <firstname.lastname@example.org>