neophyte: tcsetattr() gives 22 error in i386, not in amd64?

en0f en0f at bokey.mine.nu
Sat Oct 25 15:00:38 UTC 2008


N.J. Mann wrote:
> In message <20081025081305.GA55683 at icarus.home.lan>,
> 	Jeremy Chadwick (koitsu at FreeBSD.org) wrote:
>> On Sat, Oct 25, 2008 at 06:29:54PM +1030, en0f wrote:
>>> Jeremy Chadwick wrote:
>>>> On Sat, Oct 25, 2008 at 06:06:38PM +1030, en0f wrote:
>>>>> Nate Eldredge wrote:
>>>>>> On Fri, 24 Oct 2008, Steve Franks wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I'm getting a 22 errno from tcsetattr() on 7-STABLE i386 in code which
>>>>>>> was working under 7-STABLE amd64.  Serial device is a ucom (silabs
>>>>>>> cp2103).  Permissions on /dev/cuaU0 look fine.  Cutecom/Minicom
>>>>>>> appears to open the port without error...
>>>>>> I don't see anything obviously wrong, but I'd bet a bug related to
>>>>>> 32/64-bit types.  Can you post a complete piece of code that can be
>>>>>> compiled and run and demonstrates the problem?  Also, try compiling with
>>>>>> -Wall -W and investigate any warnings that are produced.
>>>>>>
>>>>>> By the way, errno 22 is EINVAL, "Invalid argument".  perror() is your
>>>>>> friend.
>>>>> Strange freebsd doesnt document error numbers. On POSIX, errno 22 is
>>>>> EINVAL as well (documented in errno(3)). Is this applicable to freebsd?
>>>> /usr/include/errno.h isn't documentation of error numbers?
>>> Gahhhhh! But Jeremy, I dont have magic brains to work me way out of
>>> source code :)
>> You're confusing me.  :P  The errors in errno.h are commented, and it's
>> quite readable.  Of course, it matches what's in errno(3).
> 
> Just in case someone actually goes looking for errno(3)...   It is
> actually errno(2), but I'm sure you knew that. :-)

Was a good discussion :)

Jeremy, not everyone's going to madly grep the fbsd source are they? :P

Nick, I was actually reading some non-authoritative manpage online[1] so
did not find one so got quite a bit excited! Found it now ;) Thanks for
the pointer.

I mainly subscribe to fbsd-hackers because of the pool of knowledge
people have & share on the list. :)

[1] !http://www.freebsd.org/cgi/man.cgi

-- 
	en0f


More information about the freebsd-hackers mailing list