pastebin - collaborative debugging tool
rovema.kpaste.net RSS


msnfs41client: Fix kernel crash in |fcbopen_main()|, 2024-07-31
Posted by Anonymous on Wed 31st Jul 2024 18:11
raw | new post

  1. From 4e7d2d8f9eabd04e30b5a50d2e12996ff9fd836e Mon Sep 17 00:00:00 2001
  2. From: Roland Mainz <roland.mainz@nrubsig.org>
  3. Date: Wed, 31 Jul 2024 19:02:17 +0200
  4. Subject: [PATCH] sys: Fix kernel crash in |fcbopen_main()|
  5.  
  6. Fix kernel crash in |fcbopen_main()|, caused by using
  7. a FCB which has already been deallocated.
  8.  
  9. Stack trace looks like this:
  10. ---- snip ----
  11. nt!KeBugCheckEx
  12. nt!MiSystemFault+0x1ccd81
  13. nt!MmAccessFault+0x400
  14. nt!KiPageFault+0x36d
  15. nfs41_driver!fcbopen_main+0x105 [ms-nfs41-client\sys\nfs41_driver.c @ 7513]
  16. nt!PspSystemThreadStartup+0x55
  17. nt!KiStartSystemThread+0x28
  18. ---- snip ----
  19.  
  20. Signed-off-by: Cedric Blancher <cedric.blancher@gmail.com>
  21. ---
  22. sys/nfs41_driver.c | 6 +-----
  23.  1 file changed, 1 insertion(+), 5 deletions(-)
  24.  
  25. diff --git a/sys/nfs41_driver.c b/sys/nfs41_driver.c
  26. index 288046b..d85f5fa 100644
  27. --- a/sys/nfs41_driver.c
  28. +++ b/sys/nfs41_driver.c
  29. @@ -4705,6 +4705,7 @@ static NTSTATUS nfs41_Flush(
  30.  static NTSTATUS nfs41_DeallocateForFcb(
  31.      IN OUT PMRX_FCB pFcb)
  32.  {
  33. +    nfs41_remove_fcb_entry(pFcb);
  34.      return STATUS_SUCCESS;
  35.  }
  36.  
  37. @@ -7508,11 +7509,6 @@ VOID fcbopen_main(PVOID ctx)
  38.  #endif
  39.              if (cur->skip) goto out;
  40.  
  41. -#ifdef NFS41_DRIVER_STABILITY_HACKS
  42. -            /* FIXME: Why ? */
  43. -            if (!cur->nfs41_fobx->sec_ctx.ClientToken)
  44. -                goto out;
  45. -#endif /* NFS41_DRIVER_STABILITY_HACKS */
  46.              pNetRootContext =
  47.                  NFS41GetNetRootExtension(cur->fcb->pNetRoot);
  48.              /* place an upcall for this srv_open */
  49. --
  50. 2.45.1

Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.

Syntax highlighting:

To highlight particular lines, prefix each line with {%HIGHLIGHT}




All content is user-submitted.
The administrators of this site (kpaste.net) are not responsible for their content.
Abuse reports should be emailed to us at