public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
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_DEVICE_DOOR_OPEN value
Date: Sun, 14 Dec 2025 19:41:25 -0500	[thread overview]
Message-ID: <20251215004145.2760442-8-sashal@kernel.org> (raw)
In-Reply-To: <20251215004145.2760442-1-sashal@kernel.org>

From: ChenXiaoSong <chenxiaosong@kylinos.cn>

[ Upstream commit b2b50fca34da5ec231008edba798ddf92986bd7f ]

This was reported by the KUnit tests in the later patches.

See MS-ERREF 2.3.1 STATUS_DEVICE_DOOR_OPEN. 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:

## Commit Analysis: smb/client: fix NT_STATUS_DEVICE_DOOR_OPEN value

### 1. COMMIT MESSAGE ANALYSIS

The commit message clearly indicates this is fixing an incorrect
constant value:
- A KUnit test caught the bug
- References Microsoft documentation (MS-ERREF 2.3.1
  STATUS_DEVICE_DOOR_OPEN)
- Goal is to align with official Microsoft specification

### 2. CODE CHANGE ANALYSIS

The change is a single-line fix in `fs/smb/client/nterr.h`:

```c
-#define NT_STATUS_DEVICE_DOOR_OPEN 0x80000288
+#define NT_STATUS_DEVICE_DOOR_OPEN 0x80000289
```

**The Bug:** Looking at the context, I can see the critical issue:
- `NT_STATUS_DEVICE_REQUIRES_CLEANING` = `0x80000288`
- `NT_STATUS_DEVICE_DOOR_OPEN` = `0x80000288` (WRONG - duplicate value!)

Both status codes had the same value, which is clearly incorrect. These
are NT status codes that should be unique. According to Microsoft's MS-
ERREF specification, the correct values should be:
- `NT_STATUS_DEVICE_REQUIRES_CLEANING` = `0x80000288`
- `NT_STATUS_DEVICE_DOOR_OPEN` = `0x80000289`

This is a classic copy-paste error or transcription mistake when the
values were originally added.

### 3. CLASSIFICATION

- **Bug fix**: Yes - correcting a wrong constant value
- **Feature addition**: No
- **Exception category**: N/A - this is a straightforward data
  correction

### 4. SCOPE AND RISK ASSESSMENT

- **Lines changed**: 1
- **Files touched**: 1 (header file with constant definitions)
- **Complexity**: Trivial
- **Risk of regression**: Virtually zero - only changes which error code
  is mapped to which value

The fix is as minimal and surgical as possible. Changing a constant from
an incorrect value to the correct documented value cannot introduce new
bugs.

### 5. USER IMPACT

These status codes relate to device media handling (tape drives,
removable media):
- `NT_STATUS_DEVICE_REQUIRES_CLEANING` - device needs cleaning
- `NT_STATUS_DEVICE_DOOR_OPEN` - device door is open

Without this fix, SMB clients receiving `NT_STATUS_DEVICE_DOOR_OPEN`
from a server would incorrectly interpret it as
`NT_STATUS_DEVICE_REQUIRES_CLEANING`. While these are relatively obscure
errors, correct protocol implementation matters for:
- Proper error reporting to users
- Automated error handling systems
- Protocol compliance

### 6. STABILITY INDICATORS

- **Acked-by**: Paulo Alcantara (Red Hat) - well-known SMB subsystem
  reviewer
- **Signed-off-by**: Steve French - SMB/CIFS maintainer
- **Testing**: Found by KUnit tests, indicating solid test coverage

### 7. DEPENDENCY CHECK

- No dependencies on other commits
- The header file exists in all stable trees with SMB client support
- Will apply cleanly

### CONCLUSION

This is an ideal stable backport candidate:

1. **Obviously correct**: Just fixing a wrong constant to match official
   documentation
2. **Fixes a real bug**: Duplicate/incorrect NT status code values
3. **Small and contained**: Single line change to a constant definition
4. **No new features**: Pure correction
5. **Zero regression risk**: The worst case is unchanged behavior for
   code that was incorrectly handling the duplicate value
6. **Properly reviewed**: Acked by maintainer

The fix ensures correct SMB protocol behavior by aligning NT status
codes with Microsoft's official specification. It's a textbook example
of what belongs in stable trees.

**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 e3a607b45e719..b3516c71cff77 100644
--- a/fs/smb/client/nterr.h
+++ b/fs/smb/client/nterr.h
@@ -44,7 +44,7 @@ extern const struct nt_err_code_struct nt_errs[];
 #define NT_STATUS_NO_DATA_DETECTED 0x8000001c
 #define NT_STATUS_STOPPED_ON_SYMLINK 0x8000002d
 #define NT_STATUS_DEVICE_REQUIRES_CLEANING 0x80000288
-#define NT_STATUS_DEVICE_DOOR_OPEN 0x80000288
+#define NT_STATUS_DEVICE_DOOR_OPEN 0x80000289
 #define NT_STATUS_UNSUCCESSFUL 0xC0000000 | 0x0001
 #define NT_STATUS_NOT_IMPLEMENTED 0xC0000000 | 0x0002
 #define NT_STATUS_INVALID_INFO_CLASS 0xC0000000 | 0x0003
-- 
2.51.0


  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 ` Sasha Levin [this message]
2025-12-15  0:41 ` [PATCH AUTOSEL 6.18-6.1] smb/client: fix NT_STATUS_UNABLE_TO_FREE_VM value Sasha Levin
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-8-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