* [PATCH] ALSA: seq_oss: return full count for successful SEQ_FULLSIZE writes
@ 2026-03-24 19:59 Cássio Gabriel
2026-03-27 11:59 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Cássio Gabriel @ 2026-03-24 19:59 UTC (permalink / raw)
To: Takashi Iwai, Jaroslav Kysela
Cc: linux-sound, linux-kernel, stable, Cássio Gabriel
snd_seq_oss_write() currently returns the raw load_patch() callback
result for SEQ_FULLSIZE events.
That callback is documented as returning 0 on success and -errno on
failure, but snd_seq_oss_write() is the file write path and should
report the number of user bytes consumed on success. Some in-tree
backends also return backend-specific positive values, which can still
be shorter than the original write size.
Return the full byte count for successful SEQ_FULLSIZE writes.
Preserve negative errors and convert any nonnegative completion to the
original count.
Cc: stable@vger.kernel.org
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
---
sound/core/seq/oss/seq_oss_rw.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/sound/core/seq/oss/seq_oss_rw.c b/sound/core/seq/oss/seq_oss_rw.c
index 8a142fd54a19..307ef98c44c7 100644
--- a/sound/core/seq/oss/seq_oss_rw.c
+++ b/sound/core/seq/oss/seq_oss_rw.c
@@ -101,9 +101,9 @@ snd_seq_oss_write(struct seq_oss_devinfo *dp, const char __user *buf, int count,
break;
}
fmt = (*(unsigned short *)rec.c) & 0xffff;
- /* FIXME the return value isn't correct */
- return snd_seq_oss_synth_load_patch(dp, rec.s.dev,
- fmt, buf, 0, count);
+ err = snd_seq_oss_synth_load_patch(dp, rec.s.dev,
+ fmt, buf, 0, count);
+ return err < 0 ? err : count;
}
if (ev_is_long(&rec)) {
/* extended code */
---
base-commit: b3c48fa1fb397b490101785ddd87caf2e5513a66
change-id: 20260324-alsa-seq-oss-fullsize-write-return-0d1203bffe45
Best regards,
--
Cássio Gabriel <cassiogabrielcontato@gmail.com>
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ALSA: seq_oss: return full count for successful SEQ_FULLSIZE writes
2026-03-24 19:59 [PATCH] ALSA: seq_oss: return full count for successful SEQ_FULLSIZE writes Cássio Gabriel
@ 2026-03-27 11:59 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-03-27 11:59 UTC (permalink / raw)
To: Cássio Gabriel
Cc: Takashi Iwai, Jaroslav Kysela, linux-sound, linux-kernel, stable
On Tue, 24 Mar 2026 20:59:41 +0100,
Cássio Gabriel wrote:
>
> snd_seq_oss_write() currently returns the raw load_patch() callback
> result for SEQ_FULLSIZE events.
>
> That callback is documented as returning 0 on success and -errno on
> failure, but snd_seq_oss_write() is the file write path and should
> report the number of user bytes consumed on success. Some in-tree
> backends also return backend-specific positive values, which can still
> be shorter than the original write size.
>
> Return the full byte count for successful SEQ_FULLSIZE writes.
> Preserve negative errors and convert any nonnegative completion to the
> original count.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
Applied to for-next branch now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-03-27 11:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 19:59 [PATCH] ALSA: seq_oss: return full count for successful SEQ_FULLSIZE writes Cássio Gabriel
2026-03-27 11:59 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox