[Bug 213481] SMbus ioctls don't transfer the struct smbcmd's rdata back to userland

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Fri Oct 14 16:03:03 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213481

            Bug ID: 213481
           Summary: SMbus ioctls don't transfer the struct smbcmd's rdata
                    back to userland
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: lew at perftech.com

Commands that return data in rdata don't work as documented.

As an example, SMB_READW is documented as returning the word read from the
device in rdata.word.  However, this doesn’t happen, because the ioctl request
value is defined using _IOW(), so the kernel doesn’t copy the data it read back
out.

In prior versions, the structure had only a pointer to the data, and the smb.c
code used copyout() to transfer the data back to userland.

A temporary work-around is to set rbuf to point to rdata.word and rcount to
two.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list