From nobody@FreeBSD.org  Thu Apr 12 08:32:11 2012
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 03405106566C
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 12 Apr 2012 08:32:11 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id E10868FC0A
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 12 Apr 2012 08:32:10 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id q3C8WAFu015998
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 12 Apr 2012 08:32:10 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id q3C8WAuK015997;
	Thu, 12 Apr 2012 08:32:10 GMT
	(envelope-from nobody)
Message-Id: <201204120832.q3C8WAuK015997@red.freebsd.org>
Date: Thu, 12 Apr 2012 08:32:10 GMT
From: Eugene Shouleshov <eugene_ch@mail.ru>
To: freebsd-gnats-submit@FreeBSD.org
Subject: [build] [cy] cy(4) driver breaks kernel build in 8.3
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         166866
>Category:       kern
>Synopsis:       [build] [cy] cy(4) driver breaks kernel build in 8.3
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Apr 12 08:40:13 UTC 2012
>Closed-Date:    
>Last-Modified:  Fri Apr 13 08:50:12 UTC 2012
>Originator:     Eugene Shouleshov
>Release:        FreeBSD 8.3-RELEASE
>Organization:
>Environment:
FreeBSD 8.3-RELEASE i386
>Description:
Unable to compile kernel when cy(4) device driver included in GENERIC config file.

cc -c -O -pipe  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions
-nostdinc  -I. -I../../.. -I../../../contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param
large-function-growth=1000  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector -Werror  ../../../dev/cy/cy.c
./../../dev/cy/cy.c:251: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cybreak'
./../../dev/cy/cy.c:252: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cymodem'
./../../dev/cy/cy.c:253: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cyopen'
./../../dev/cy/cy.c:254: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cyclose'
cc1: warnings being treated as errors
./../../dev/cy/cy.c: In function 'cyattach_common':
./../../dev/cy/cy.c:411: warning: implicit declaration of function 'ttyalloc'
./../../dev/cy/cy.c:411: warning: nested extern declaration of 'ttyalloc'
./../../dev/cy/cy.c:411: warning: assignment makes pointer from integer without a cast
./../../dev/cy/cy.c:412: error: 'struct tty' has no member named 't_open'
./../../dev/cy/cy.c:412: error: 'cyopen' undeclared (first use in this function)
./../../dev/cy/cy.c:412: error: (Each undeclared identifier is reported only once
./../../dev/cy/cy.c:412: error: for each function it appears in.)
./../../dev/cy/cy.c:413: error: 'struct tty' has no member named 't_close'
./../../dev/cy/cy.c:413: error: 'cyclose' undeclared (first use in this function)
./../../dev/cy/cy.c:414: error: 'struct tty' has no member named 't_oproc'
./../../dev/cy/cy.c:415: error: 'struct tty' has no member named 't_stop'
./../../dev/cy/cy.c:416: error: 'struct tty' has no member named 't_param'
./../../dev/cy/cy.c:417: error: 'struct tty' has no member named 't_break'
./../../dev/cy/cy.c:417: error: 'cybreak' undeclared (first use in this function)
./../../dev/cy/cy.c:418: error: 'struct tty' has no member named 't_modem'
./../../dev/cy/cy.c:418: error: 'cymodem' undeclared (first use in this function)
./../../dev/cy/cy.c:419: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c:421: error: 'struct tty' has no member named 't_init_in'
./../../dev/cy/cy.c:436: warning: implicit declaration of function 'ttycreate'
./../../dev/cy/cy.c:436: warning: nested extern declaration of 'ttycreate'
./../../dev/cy/cy.c:436: error: 'TS_CALLOUT' undeclared (first use in this function)
./../../dev/cy/cy.c: In function 'cyopen':
./../../dev/cy/cy.c:453: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c: In function 'cyclose':
./../../dev/cy/cy.c:495: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c:516: error: 'struct tty' has no member named 't_cflag'
./../../dev/cy/cy.c:524: error: 'struct tty' has no member named 't_actout'
./../../dev/cy/cy.c:526: error: 'struct tty' has no member named 't_init_in'
./../../dev/cy/cy.c:527: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:527: error: 'TS_ISOPEN' undeclared (first use in this function)
./../../dev/cy/cy.c:528: warning: implicit declaration of function 'cymodem'
./../../dev/cy/cy.c:528: warning: nested extern declaration of 'cymodem'
./../../dev/cy/cy.c:536: warning: implicit declaration of function 'ttydtrwaitstart'
./../../dev/cy/cy.c:536: warning: nested extern declaration of 'ttydtrwaitstart'
./../../dev/cy/cy.c:539: error: 'struct tty' has no member named 't_actout'
./../../dev/cy/cy.c:540: error: 'struct tty' has no member named 't_actout'
./../../dev/cy/cy.c:541: warning: implicit declaration of function 'TSA_CARR_ON'
./../../dev/cy/cy.c:541: warning: nested extern declaration of 'TSA_CARR_ON'
./../../dev/cy/cy.c:541: warning: passing argument 1 of 'wakeup' makes pointer from integer without a cast
./../../dev/cy/cy.c: In function 'cyinput':
./../../dev/cy/cy.c:561: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:561: error: 'TS_ISOPEN' undeclared (first use in this function)
./../../dev/cy/cy.c:566: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:566: error: 'TS_CAN_BYPASS_L_RINT' undeclared (first use in this function)
./../../dev/cy/cy.c:584: error: 'struct tty' has no member named 't_rawq'
./../../dev/cy/cy.c:584: error: 'struct tty' has no member named 't_ihiwat'
./../../dev/cy/cy.c:586: error: 'struct tty' has no member named 't_iflag'
./../../dev/cy/cy.c:587: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:587: error: 'TS_TBLOCK' undeclared (first use in this function)
./../../dev/cy/cy.c:588: warning: implicit declaration of function 'ttyblock'
./../../dev/cy/cy.c:588: warning: nested extern declaration of 'ttyblock'
./../../dev/cy/cy.c:590: warning: implicit declaration of function 'b_to_q'
./../../dev/cy/cy.c:590: warning: nested extern declaration of 'b_to_q'
./../../dev/cy/cy.c:590: error: 'struct tty' has no member named 't_rawq'
./../../dev/cy/cy.c:592: error: 'tk_nin' undeclared (first use in this function)
./../../dev/cy/cy.c:593: error: 'tk_rawcc' undeclared (first use in this function)
./../../dev/cy/cy.c:594: error: 'struct tty' has no member named 't_rawcc'
./../../dev/cy/cy.c:595: warning: implicit declaration of function 'ttwakeup'
./../../dev/cy/cy.c:595: warning: nested extern declaration of 'ttwakeup'
./../../dev/cy/cy.c:596: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:596: error: 'TS_TTSTOP' undeclared (first use in this function)
./../../dev/cy/cy.c:597: error: 'struct tty' has no member named 't_iflag'
./../../dev/cy/cy.c:598: error: 'struct tty' has no member named 't_cc'
./../../dev/cy/cy.c:598: error: 'struct tty' has no member named 't_cc'
./../../dev/cy/cy.c:599: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:600: error: 'struct tty' has no member named 't_lflag'
./../../dev/cy/cy.c:620: error: 'TTY_BI' undeclared (first use in this function)
./../../dev/cy/cy.c:622: error: 'TTY_FE' undeclared (first use in this function)
./../../dev/cy/cy.c:624: error: 'TTY_OE' undeclared (first use in this function)
./../../dev/cy/cy.c:626: error: 'TTY_PE' undeclared (first use in this function)
./../../dev/cy/cy.c:628: warning: implicit declaration of function 'ttyld_rint'
./../../dev/cy/cy.c:628: warning: nested extern declaration of 'ttyld_rint'
./../../dev/cy/cy.c:642: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c: In function 'cyintr':
./../../dev/cy/cy.c:730: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:730: error: 'TS_ISOPEN' undeclared (first use in this function)
./../../dev/cy/cy.c:732: error: 'struct tty' has no member named 't_iflag'
./../../dev/cy/cy.c:734: error: 'struct tty' has no member named 't_iflag'
./../../dev/cy/cy.c:737: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:737: error: 'TS_CAN_BYPASS_L_RINT' undeclared (first use in this function)
./../../dev/cy/cy.c:740: error: 'struct tty' has no member named 't_iflag'
./../../dev/cy/cy.c:746: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:746: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:753: error: 'struct tty' has no member named 't_do_timestamp'
./../../dev/cy/cy.c:754: error: 'struct tty' has no member named 't_timestamp'
./../../dev/cy/cy.c:782: error: 'struct tty' has no member named 't_do_timestamp'
./../../dev/cy/cy.c:783: error: 'struct tty' has no member named 't_timestamp'
./../../dev/cy/cy.c:789: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:791: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:806: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:807: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:812: error: 'struct tty' has no member named 't_do_timestamp'
./../../dev/cy/cy.c:813: error: 'struct tty' has no member named 't_timestamp'
./../../dev/cy/cy.c:826: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c:827: error: 'struct tty' has no member named 't_hotchar'
./../../dev/cy/cy.c: In function 'cybreak':
./../../dev/cy/cy.c:1122: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c: In function 'cypoll':
./../../dev/cy/cy.c:1193: warning: implicit declaration of function 'ttyld_modem'
./../../dev/cy/cy.c:1193: warning: nested extern declaration of 'ttyld_modem'
./../../dev/cy/cy.c:1204: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1204: error: 'TS_BUSY' undeclared (first use in this function)
./../../dev/cy/cy.c:1205: warning: implicit declaration of function 'ttwwakeup'
./../../dev/cy/cy.c:1205: warning: nested extern declaration of 'ttwwakeup'
./../../dev/cy/cy.c:1220: warning: implicit declaration of function 'ttyld_start'
./../../dev/cy/cy.c:1220: warning: nested extern declaration of 'ttyld_start'
./../../dev/cy/cy.c: In function 'cyparam':
./../../dev/cy/cy.c:1246: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c:1253: error: 'struct tty' has no member named 't_ospeed'
./../../dev/cy/cy.c:1512: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1512: error: 'TS_TTSTOP' undeclared (first use in this function)
./../../dev/cy/cy.c: In function 'cysetwater':
./../../dev/cy/cy.c:1617: error: 'struct tty' has no member named 't_ififosize'
./../../dev/cy/cy.c:1618: error: 'struct tty' has no member named 't_ispeedwat'
./../../dev/cy/cy.c:1619: error: 'struct tty' has no member named 't_ospeedwat'
./../../dev/cy/cy.c: In function 'cystart':
./../../dev/cy/cy.c:1661: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c:1671: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1671: error: 'TS_TTSTOP' undeclared (first use in this function)
./../../dev/cy/cy.c:1687: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1687: error: 'TS_TBLOCK' undeclared (first use in this function)
./../../dev/cy/cy.c:1708: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1708: error: 'TS_TIMEOUT' undeclared (first use in this function)
./../../dev/cy/cy.c:1713: error: 'struct ttyoutq' has no member named 'c_cc'
./../../dev/cy/cy.c:1722: warning: implicit declaration of function 'q_to_b'
./../../dev/cy/cy.c:1722: warning: nested extern declaration of 'q_to_b'
./../../dev/cy/cy.c:1749: error: 'struct ttyoutq' has no member named 'c_cc'
./../../dev/cy/cy.c:1781: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1781: error: 'TS_BUSY' undeclared (first use in this function)
./../../dev/cy/cy.c: In function 'comstop':
./../../dev/cy/cy.c:1805: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c:1821: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1821: error: 'TS_BUSY' undeclared (first use in this function)
./../../dev/cy/cy.c: At top level:
./../../dev/cy/cy.c:1842: error: static declaration of 'cymodem' follows non-static declaration
./../../dev/cy/cy.c:528: error: previous implicit declaration of 'cymodem' was here
./../../dev/cy/cy.c: In function 'cymodem':
./../../dev/cy/cy.c:1847: error: 'struct tty' has no member named 't_sc'
./../../dev/cy/cy.c: In function 'cysettimeout':
./../../dev/cy/cy.c:1915: error: 'struct tty' has no member named 't_state'
./../../dev/cy/cy.c:1915: error: 'TS_ISOPEN' undeclared (first use in this function)
./../../dev/cy/cy.c: In function 'disc_optim':
./../../dev/cy/cy.c:1978: warning: implicit declaration of function 'ttyldoptim'
./../../dev/cy/cy.c:1978: warning: nested extern declaration of 'ttyldoptim'
./../../dev/cy/cy.c: In function 'cd_etc':
./../../dev/cy/cy.c:2112: error: 'TTIPRI' undeclared (first use in this function)
*** Error code 1

Stop in /usr/src/sys/i386/compile/TEST.

>How-To-Repeat:
add line
device cy

and try to recompile the kernel.

>Fix:


>Release-Note:
>Audit-Trail:

From: Eugene <eugene_ch@mail.ru>
To: bug-followup@FreeBSD.org, eugene_ch@mail.ru
Cc:  
Subject: Re: kern/166866: [build] [cy] cy(4) driver breaks kernel build in 8.3
Date: Fri, 13 Apr 2012 12:42:13 +0400

 In fact, this problem is described in UPDATING:
 
 20080820:
         The TTY subsystem of the kernel has been replaced by a new      
         implementation, which provides better scalability and an        
         improved driver model. Most common drivers have been migrated to
         the new TTY subsystem, while others have not. The following     
         drivers have not yet been ported to the new TTY layer:          
                                                                         
         PCI/ISA:                                                        
                 cy, digi, rc, rp, sio                                   
                                                                         
         USB:                                                            
                 ubser, ucycom                                           
                                                                         
         Line disciplines:                                               
                 ng_h4, ng_tty, ppp, sl, snp                             
                                                                         
         Adding these drivers to your kernel configuration file shall
         cause compilation to fail.
 
 
 But "Hardware Notes" has all this devices listed as supported.
 
 Probably, this devices (except for ng_tty, which was updated in
 20081225) must be marked as temporary unsupported until
 their drivers were fixed.
 
 
 
 
 Eugene                          mailto:eugene_ch@mail.ru
 
>Unformatted:
