From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: ChenXiaoSong <chenxiaosong@kylinos.cn>,
"Paulo Alcantara (Red Hat)" <pc@manguebit.org>,
Steve French <stfrench@microsoft.com>,
Sasha Levin <sashal@kernel.org>,
sfrench@samba.org, linux-cifs@vger.kernel.org,
samba-technical@lists.samba.org
Subject: [PATCH AUTOSEL 6.18-6.1] smb/client: fix NT_STATUS_UNABLE_TO_FREE_VM value
Date: Sun, 14 Dec 2025 19:41:26 -0500 [thread overview]
Message-ID: <20251215004145.2760442-9-sashal@kernel.org> (raw)
In-Reply-To: <20251215004145.2760442-1-sashal@kernel.org>
From: ChenXiaoSong <chenxiaosong@kylinos.cn>
[ Upstream commit 9f99caa8950a76f560a90074e3a4b93cfa8b3d84 ]
This was reported by the KUnit tests in the later patches.
See MS-ERREF 2.3.1 STATUS_UNABLE_TO_FREE_VM. Keep it consistent with the
value in the documentation.
Signed-off-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
Acked-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
LLM Generated explanations, may be completely bogus:
## Analysis of smb/client: fix NT_STATUS_UNABLE_TO_FREE_VM value
### 1. COMMIT MESSAGE ANALYSIS
The commit explicitly states it's a "fix" for an incorrect NT status
code value. Key points:
- Found by KUnit tests (systematic testing uncovered the issue)
- References MS-ERREF 2.3.1 documentation as the authoritative source
- Acked by Paulo Alcantara (Red Hat) - a key SMB/CIFS maintainer
- Committed by Steve French - the SMB subsystem maintainer
### 2. CODE CHANGE ANALYSIS
The change is a single-line modification in `fs/smb/client/nterr.h`:
```c
-#define NT_STATUS_UNABLE_TO_FREE_VM 0x80000000 | 0x001a
+#define NT_STATUS_UNABLE_TO_FREE_VM 0xC0000000 | 0x001a
```
In NT status codes, the high bits encode severity:
- `0x00000000` = Success
- `0x40000000` = Informational
- `0x80000000` = Warning
- `0xC0000000` = Error
The bug: `NT_STATUS_UNABLE_TO_FREE_VM` was incorrectly defined as a
"Warning" (`0x80000000`) instead of "Error" (`0xC0000000`). Looking at
the context, **all surrounding status codes** use `0xC0000000`, making
this one obvious outlier.
Per Microsoft's MS-ERREF documentation, STATUS_UNABLE_TO_FREE_VM
(0xC000001A) is indeed an error status, not a warning.
### 3. CLASSIFICATION
- **Bug type:** Incorrect constant value (data bug)
- **Not a feature:** Simply corrects an existing definition to match
specification
- **Not a security issue:** Though incorrect error handling could have
unexpected effects
### 4. SCOPE AND RISK ASSESSMENT
- **Lines changed:** 1
- **Files touched:** 1 (header file)
- **Complexity:** Minimal - single character change (`8` → `C`)
- **Risk:** Essentially zero - corrects an obvious typo/error to match:
1. The official Microsoft documentation
2. The pattern used by all surrounding definitions
### 5. USER IMPACT
If an SMB server returns this status code, the client would fail to
properly match and handle it due to the incorrect value. This could
cause:
- Failure to recognize error conditions
- Incorrect error messages to users
- Potential mishandling of this error scenario
While this specific status code may be rarely encountered in practice,
when it does occur, the current code would misbehave.
### 6. STABILITY INDICATORS
- **Reviewed by maintainers:** Acked by Paulo Alcantara, committed by
Steve French
- **Testing:** Found through KUnit tests (automated testing)
- **Pattern consistency:** All other NT_STATUS_* codes in the same
numerical range use `0xC0000000`
### 7. DEPENDENCY CHECK
This is a completely standalone fix. The header file has existed for a
long time, and this is just correcting an incorrect value within it. No
dependencies on other commits.
---
### Summary
**Should this be backported?**
This commit is an excellent backport candidate:
1. **Obviously correct:** The fix makes the value match both official
Microsoft documentation and the pattern used by all surrounding
definitions
2. **Fixes a real bug:** Incorrect status code would cause mismatched
error handling
3. **Minimal scope:** One-character change in a single header file
4. **Zero regression risk:** This is purely a correctness fix to a
constant
5. **No new features:** Just corrects existing code
6. **No dependencies:** Standalone fix
7. **Well-reviewed:** Acked by key SMB maintainer
This is exactly the type of safe, surgical, low-risk fix that stable
trees should include. The change is so minimal and so obviously correct
that there's essentially no risk, while the benefit is ensuring correct
SMB protocol handling.
**YES**
fs/smb/client/nterr.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/smb/client/nterr.h b/fs/smb/client/nterr.h
index 180602c22355e..e3a607b45e719 100644
--- a/fs/smb/client/nterr.h
+++ b/fs/smb/client/nterr.h
@@ -70,7 +70,7 @@ extern const struct nt_err_code_struct nt_errs[];
#define NT_STATUS_NO_MEMORY 0xC0000000 | 0x0017
#define NT_STATUS_CONFLICTING_ADDRESSES 0xC0000000 | 0x0018
#define NT_STATUS_NOT_MAPPED_VIEW 0xC0000000 | 0x0019
-#define NT_STATUS_UNABLE_TO_FREE_VM 0x80000000 | 0x001a
+#define NT_STATUS_UNABLE_TO_FREE_VM 0xC0000000 | 0x001a
#define NT_STATUS_UNABLE_TO_DELETE_SECTION 0xC0000000 | 0x001b
#define NT_STATUS_INVALID_SYSTEM_SERVICE 0xC0000000 | 0x001c
#define NT_STATUS_ILLEGAL_INSTRUCTION 0xC0000000 | 0x001d
--
2.51.0
next prev parent reply other threads:[~2025-12-15 0:42 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-15 0:41 [PATCH AUTOSEL 6.18-6.17] ALSA: hda/realtek: Add support for ASUS UM3406GA Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.1] smb/client: fix NT_STATUS_NO_DATA_DETECTED value Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.17] ALSA: hda: intel-dsp-config: Prefer legacy driver as fallback Sasha Levin
2025-12-15 23:29 ` Askar Safin
2026-01-07 11:16 ` Sasha Levin
2026-01-11 12:04 ` Askar Safin
2026-01-11 12:24 ` Greg KH
2026-01-11 16:01 ` Askar Safin
2026-01-12 10:54 ` Greg KH
2026-01-15 14:34 ` [PATCH 6.12.y] " Askar Safin
2026-01-15 14:40 ` [PATCH AUTOSEL 6.18-6.17] " Askar Safin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.12] ASoC: rockchip: Fix Wvoid-pointer-to-enum-cast warning (again) Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-5.10] NFSv4: ensure the open stateid seqid doesn't go backwards Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.1] bcache: fix improper use of bi_end_io Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-5.10] NFS: Fix up the automount fs_context to use the correct cred Sasha Levin
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.1] smb/client: fix NT_STATUS_DEVICE_DOOR_OPEN value Sasha Levin
2025-12-15 0:41 ` Sasha Levin [this message]
2025-12-15 0:41 ` [PATCH AUTOSEL 6.18-6.12] drm/amd/display: shrink struct members Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251215004145.2760442-9-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=chenxiaosong@kylinos.cn \
--cc=linux-cifs@vger.kernel.org \
--cc=patches@lists.linux.dev \
--cc=pc@manguebit.org \
--cc=samba-technical@lists.samba.org \
--cc=sfrench@samba.org \
--cc=stable@vger.kernel.org \
--cc=stfrench@microsoft.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox