The branch main has been updated by hselasky:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=ad370f7658ba59811d02c04032ac33ef787f752f

commit ad370f7658ba59811d02c04032ac33ef787f752f
Author:     Florian Walpen <[email protected]>
AuthorDate: 2022-11-04 18:04:26 +0000
Commit:     Hans Petter Selasky <[email protected]>
CommitDate: 2022-11-04 18:05:34 +0000

    sound(4): Fix memory map of /dev/dsp devices when buffer size is not a 
multiple of PAGE_SIZE.
    
    By using sndbuf_getallocsize() instead of sndbuf_getsize() in 
dsp_mmap_single().
    
    PR:             267555
    MFC after:      1 week
    Sponsored by:   NVIDIA Networking
---
 sys/dev/sound/pcm/dsp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c
index 15f437b8627c..cddc05206c4d 100644
--- a/sys/dev/sound/pcm/dsp.c
+++ b/sys/dev/sound/pcm/dsp.c
@@ -2291,7 +2291,7 @@ dsp_mmap_single(struct cdev *i_dev, vm_ooffset_t *offset,
 
        c = ((nprot & PROT_WRITE) != 0) ? wrch : rdch;
        if (c == NULL || (c->flags & CHN_F_MMAP_INVALID) ||
-           (*offset  + size) > sndbuf_getsize(c->bufsoft) ||
+           (*offset  + size) > sndbuf_getallocsize(c->bufsoft) ||
            (wrch != NULL && (wrch->flags & CHN_F_MMAP_INVALID)) ||
            (rdch != NULL && (rdch->flags & CHN_F_MMAP_INVALID))) {
                relchns(i_dev, rdch, wrch, SD_F_PRIO_RD | SD_F_PRIO_WR);

Reply via email to