* sparse errors
@ 2003-05-28 5:38 Ryan Anderson
2003-05-28 14:16 ` Linus Torvalds
2003-05-28 14:39 ` Linus Torvalds
0 siblings, 2 replies; 17+ messages in thread
From: Ryan Anderson @ 2003-05-28 5:38 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 791 bytes --]
I'm not totally grokking how sparse is put together yet, but I've got
this:
Some symbols with type SYM_NODE are getting ctype->base_type==NULL,
causing a segfault in type_difference:422. (If I work around that one,
there's another spot at line 680. I started to follow what was going on
a bit at that point and realized they were probably symptoms, not the
actual bug, so I stopped working around it.)
I've got a config against bk-current that will trigger this in
fs/cramfs/uncompress.c attached in case it helps any.
Oh, BTW, the way you have struct ctype_sym declared inside struct symbol
confuses the crap out of gdb, but gcc appears to like it, so... *shrug*.
Should this be cc:ed to linux-kernel, or do you have another place in
mind?
--
Ryan Anderson
sometimes Pug Majere
[-- Attachment #2: 2.5.70-config --]
[-- Type: text/plain, Size: 33621 bytes --]
#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_EMBEDDED is not set
CONFIG_FUTEX=y
CONFIG_EPOLL=y
#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
CONFIG_KMOD=y
#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
CONFIG_MPENTIUMIII=y
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_SMP is not set
CONFIG_PREEMPT=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_X86_MCE_P4THERMAL=y
CONFIG_TOSHIBA=m
CONFIG_I8K=m
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
# CONFIG_EDD is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
CONFIG_MATH_EMULATION=y
CONFIG_MTRR=y
CONFIG_HAVE_DEC_LOCK=y
#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
# CONFIG_SOFTWARE_SUSPEND is not set
#
# ACPI Support
#
CONFIG_ACPI=y
# CONFIG_ACPI_HT_ONLY is not set
CONFIG_ACPI_BOOT=y
# CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set
# CONFIG_ACPI_BUTTON is not set
# CONFIG_ACPI_FAN is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_TOSHIBA is not set
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
CONFIG_APM=m
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not set
CONFIG_APM_CPU_IDLE=y
# CONFIG_APM_DISPLAY_BLANK is not set
# CONFIG_APM_RTC_IS_GMT is not set
# CONFIG_APM_ALLOW_INTS is not set
# CONFIG_APM_REAL_MODE_POWER_OFF is not set
#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set
#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y
CONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set
CONFIG_HOTPLUG=y
#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set
CONFIG_PCMCIA_PROBE=y
#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set
#
# Executable file formats
#
CONFIG_KCORE_ELF=y
# CONFIG_KCORE_AOUT is not set
CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set
#
# Parallel port support
#
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_PC_FIFO=y
CONFIG_PARPORT_PC_SUPERIO=y
# CONFIG_PARPORT_OTHER is not set
CONFIG_PARPORT_1284=y
#
# Plug and Play support
#
CONFIG_PNP=y
CONFIG_PNP_NAMES=y
CONFIG_PNP_DEBUG=y
#
# Protocols
#
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
#
# Block devices
#
CONFIG_BLK_DEV_FD=y
# CONFIG_BLK_DEV_XD is not set
CONFIG_PARIDE=m
CONFIG_PARIDE_PARPORT=m
#
# Parallel IDE high-level drivers
#
CONFIG_PARIDE_PD=m
CONFIG_PARIDE_PCD=m
CONFIG_PARIDE_PF=m
CONFIG_PARIDE_PT=m
CONFIG_PARIDE_PG=m
#
# Parallel IDE protocol modules
#
CONFIG_PARIDE_ATEN=m
CONFIG_PARIDE_BPCK=m
# CONFIG_PARIDE_BPCK6 is not set
CONFIG_PARIDE_COMM=m
CONFIG_PARIDE_DSTR=m
CONFIG_PARIDE_FIT2=m
CONFIG_PARIDE_FIT3=m
CONFIG_PARIDE_EPAT=m
# CONFIG_PARIDE_EPATC8 is not set
CONFIG_PARIDE_EPIA=m
CONFIG_PARIDE_FRIQ=m
CONFIG_PARIDE_FRPW=m
CONFIG_PARIDE_KBIC=m
CONFIG_PARIDE_KTTI=m
CONFIG_PARIDE_ON20=m
CONFIG_PARIDE_ON26=m
CONFIG_BLK_CPQ_DA=y
CONFIG_BLK_CPQ_CISS_DA=y
CONFIG_CISS_SCSI_TAPE=y
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_LBD=y
#
# ATA/ATAPI/MFM/RLL device support
#
CONFIG_IDE=y
#
# IDE, ATA and ATAPI Block devices
#
CONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
# CONFIG_IDEDISK_MULTI_MODE is not set
CONFIG_IDEDISK_STROKE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDEFLOPPY=y
CONFIG_BLK_DEV_IDESCSI=m
CONFIG_IDE_TASK_IOCTL=y
#
# IDE chipset support/bugfixes
#
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_IDEPNP=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDE_TCQ is not set
# CONFIG_BLK_DEV_OFFBOARD is not set
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
# CONFIG_IDEDMA_PCI_AUTO is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_AEC62XX=y
CONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_TRIFLEX=m
# CONFIG_BLK_DEV_CY82C693 is not set
CONFIG_BLK_DEV_CS5520=m
CONFIG_BLK_DEV_HPT34X=y
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_SC1200=m
CONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_OPTI621 is not set
CONFIG_BLK_DEV_PDC202XX_OLD=y
CONFIG_BLK_DEV_PDC202XX_NEW=y
# CONFIG_PDC202XX_FORCE is not set
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_SVWKS=y
# CONFIG_BLK_DEV_SIIMAGE is not set
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDE_CHIPSETS=y
#
# Note: most of these also require special kernel boot parameters
#
CONFIG_BLK_DEV_4DRIVES=y
CONFIG_BLK_DEV_ALI14XX=y
CONFIG_BLK_DEV_DTC2278=y
CONFIG_BLK_DEV_HT6560B=y
CONFIG_BLK_DEV_PDC4030=y
CONFIG_BLK_DEV_QD65XX=y
CONFIG_BLK_DEV_UMC8672=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_BLK_DEV_PDC202XX=y
CONFIG_BLK_DEV_IDE_MODES=y
#
# SCSI device support
#
CONFIG_SCSI=y
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_CHR_DEV_SG=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_REPORT_LUNS=y
# CONFIG_SCSI_CONSTANTS is not set
CONFIG_SCSI_LOGGING=y
#
# SCSI low-level drivers
#
CONFIG_BLK_DEV_3W_XXXX_RAID=y
# CONFIG_SCSI_7000FASST is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AHA152X is not set
# CONFIG_SCSI_AHA1542 is not set
# CONFIG_SCSI_AACRAID is not set
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_PROBE_EISA_VL is not set
# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
CONFIG_SCSI_AIC79XX=m
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
CONFIG_AIC79XX_RESET_DELAY_MS=15000
# CONFIG_AIC79XX_BUILD_FIRMWARE is not set
# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
CONFIG_AIC79XX_DEBUG_ENABLE=y
CONFIG_AIC79XX_DEBUG_MASK=0
CONFIG_AIC79XX_REG_PRETTY_PRINT=y
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 is not set
# CONFIG_SCSI_AM53C974 is not set
# CONFIG_SCSI_MEGARAID is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_CPQFCTS is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_DTC3280 is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_IMM is not set
# CONFIG_SCSI_NCR53C406A is not set
# CONFIG_SCSI_NCR53C7xx is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_NCR53C8XX is not set
# CONFIG_SCSI_SYM53C8XX is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PCI2000 is not set
# CONFIG_SCSI_PCI2220I is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_SEAGATE is not set
# CONFIG_SCSI_SYM53C416 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set
#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set
#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set
#
# Fusion MPT device support
#
CONFIG_FUSION=m
CONFIG_FUSION_MAX_SGE=40
CONFIG_FUSION_ISENSE=m
CONFIG_FUSION_CTL=m
#
# IEEE 1394 (FireWire) support (EXPERIMENTAL)
#
CONFIG_IEEE1394=m
#
# Subsystem Options
#
# CONFIG_IEEE1394_VERBOSEDEBUG is not set
CONFIG_IEEE1394_OUI_DB=y
#
# Device Drivers
#
CONFIG_IEEE1394_PCILYNX=m
CONFIG_IEEE1394_OHCI1394=m
#
# Protocol Drivers
#
CONFIG_IEEE1394_VIDEO1394=m
CONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
# CONFIG_IEEE1394_ETH1394 is not set
# CONFIG_IEEE1394_DV1394 is not set
CONFIG_IEEE1394_RAWIO=m
# CONFIG_IEEE1394_CMP is not set
#
# I2O device support
#
# CONFIG_I2O is not set
#
# Networking support
#
CONFIG_NET=y
#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
CONFIG_NETLINK_DEV=m
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_UNIX=y
CONFIG_NET_KEY=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
# CONFIG_NET_IPGRE_BROADCAST is not set
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=m
#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=m
CONFIG_IP_NF_FTP=m
CONFIG_IP_NF_IRC=m
CONFIG_IP_NF_TFTP=m
CONFIG_IP_NF_AMANDA=m
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_MAC=m
# CONFIG_IP_NF_MATCH_PKTTYPE is not set
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
# CONFIG_IP_NF_MATCH_ECN is not set
# CONFIG_IP_NF_MATCH_DSCP is not set
# CONFIG_IP_NF_MATCH_AH_ESP is not set
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_HELPER=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_UNCLEAN=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_MIRROR=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
# CONFIG_IP_NF_NAT_LOCAL is not set
CONFIG_IP_NF_NAT_SNMP_BASIC=m
CONFIG_IP_NF_NAT_IRC=m
CONFIG_IP_NF_NAT_FTP=m
CONFIG_IP_NF_NAT_TFTP=m
CONFIG_IP_NF_NAT_AMANDA=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_DSCP is not set
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_LOG=m
# CONFIG_IP_NF_TARGET_ULOG is not set
CONFIG_IP_NF_TARGET_TCPMSS=m
# CONFIG_IP_NF_ARPTABLES is not set
CONFIG_IP_NF_COMPAT_IPCHAINS=m
CONFIG_IP_NF_COMPAT_IPFWADM=m
# CONFIG_IPV6 is not set
CONFIG_XFRM_USER=y
#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_LLC is not set
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
CONFIG_ECONET=m
# CONFIG_ECONET_AUNUDP is not set
# CONFIG_ECONET_NATIVE is not set
CONFIG_WAN_ROUTER=m
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set
#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set
#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y
#
# ARCnet devices
#
CONFIG_ARCNET=m
# CONFIG_ARCNET_1201 is not set
CONFIG_ARCNET_1051=m
# CONFIG_ARCNET_RAW is not set
CONFIG_ARCNET_COM90xx=m
CONFIG_ARCNET_COM90xxIO=m
CONFIG_ARCNET_RIM_I=m
CONFIG_ARCNET_COM20020=m
# CONFIG_ARCNET_COM20020_ISA is not set
CONFIG_ARCNET_COM20020_PCI=m
CONFIG_DUMMY=y
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set
# CONFIG_NET_SB1000 is not set
#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=m
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set
#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
CONFIG_AMD8111_ETH=m
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not set
# CONFIG_B44 is not set
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
# CONFIG_E100 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
CONFIG_8139CP=y
CONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
CONFIG_8139TOO_8129=y
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
CONFIG_VIA_RHINE=y
# CONFIG_VIA_RHINE_MMIO is not set
# CONFIG_NET_POCKET is not set
#
# Ethernet (1000 Mbit)
#
CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not set
CONFIG_DL2K=m
CONFIG_E1000=m
# CONFIG_E1000_NAPI is not set
CONFIG_NS83820=m
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
CONFIG_SK98LIN=m
# CONFIG_TIGON3 is not set
#
# Ethernet (10000 Mbit)
#
CONFIG_IXGB=m
# CONFIG_IXGB_NAPI is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=y
CONFIG_PPP_MULTILINK=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=y
# CONFIG_PPP_SYNC_TTY is not set
CONFIG_PPP_DEFLATE=y
CONFIG_PPP_BSDCOMP=y
# CONFIG_PPPOE is not set
# CONFIG_SLIP is not set
#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set
#
# Token Ring devices (depends on LLC=y)
#
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
CONFIG_SHAPER=y
#
# Wan interfaces
#
# CONFIG_WAN is not set
#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set
#
# IrDA (infrared) support
#
CONFIG_IRDA=m
#
# IrDA protocols
#
CONFIG_IRLAN=m
# CONFIG_IRNET is not set
CONFIG_IRCOMM=m
CONFIG_IRDA_ULTRA=y
#
# IrDA options
#
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
CONFIG_IRDA_DEBUG=y
#
# Infrared-port device drivers
#
#
# SIR device drivers
#
CONFIG_IRTTY_SIR=m
#
# Dongle support
#
CONFIG_DONGLE=y
CONFIG_ESI_DONGLE=m
CONFIG_ACTISYS_DONGLE=m
CONFIG_TEKRAM_DONGLE=m
#
# Old SIR device drivers
#
# CONFIG_IRTTY_OLD is not set
CONFIG_IRPORT_SIR=m
#
# Old Serial dongle support
#
# CONFIG_DONGLE_OLD is not set
#
# FIR device drivers
#
# CONFIG_USB_IRDA is not set
CONFIG_NSC_FIR=m
CONFIG_WINBOND_FIR=m
# CONFIG_TOSHIBA_OLD is not set
CONFIG_TOSHIBA_FIR=m
CONFIG_SMC_IRCC_OLD=m
CONFIG_SMC_IRCC_FIR=m
CONFIG_ALI_FIR=m
CONFIG_VLSI_FIR=m
#
# ISDN subsystem
#
# CONFIG_ISDN_BOOL is not set
#
# Telephony Support
#
# CONFIG_PHONE is not set
#
# Input device support
#
CONFIG_INPUT=y
#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=m
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=m
# CONFIG_INPUT_EVBUG is not set
#
# Input I/O drivers
#
CONFIG_GAMEPORT=m
CONFIG_SOUND_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
CONFIG_GAMEPORT_EMU10K1=m
CONFIG_GAMEPORT_VORTEX=m
CONFIG_GAMEPORT_FM801=m
CONFIG_GAMEPORT_CS461x=m
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=m
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=y
CONFIG_INPUT_UINPUT=m
#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_COMPUTONE=m
CONFIG_ROCKETPORT=m
CONFIG_CYCLADES=m
# CONFIG_CYZ_INTR is not set
CONFIG_DIGIEPCA=m
CONFIG_ESPSERIAL=m
CONFIG_MOXA_INTELLIO=m
CONFIG_MOXA_SMARTIO=m
CONFIG_ISI=m
CONFIG_SYNCLINK=m
# CONFIG_SYNCLINKMP is not set
CONFIG_N_HDLC=m
CONFIG_RISCOM8=m
CONFIG_SPECIALIX=m
CONFIG_SPECIALIX_RTSCTS=y
CONFIG_SX=m
CONFIG_RIO=m
CONFIG_RIO_OLDPCI=y
CONFIG_STALDRV=y
CONFIG_STALLION=m
CONFIG_ISTALLION=m
#
# Serial drivers
#
# CONFIG_SERIAL_8250 is not set
#
# Non-8250 serial port support
#
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set
CONFIG_PPDEV=m
# CONFIG_TIPAR is not set
#
# I2C support
#
CONFIG_I2C=m
CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_PHILIPSPAR=m
CONFIG_I2C_ELV=m
CONFIG_I2C_VELLEMAN=m
# CONFIG_SCx200_ACB is not set
CONFIG_I2C_ALGOPCF=m
CONFIG_I2C_ELEKTOR=m
CONFIG_I2C_CHARDEV=m
#
# I2C Hardware Sensors Mainboard support
#
CONFIG_I2C_ALI15X3=m
CONFIG_I2C_AMD756=m
CONFIG_I2C_AMD8111=m
CONFIG_I2C_I801=m
CONFIG_I2C_ISA=m
CONFIG_I2C_PIIX4=m
CONFIG_I2C_SIS96X=m
CONFIG_I2C_VIAPRO=m
#
# I2C Hardware Sensors Chip support
#
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_VIA686A=m
CONFIG_SENSORS_W83781D=m
CONFIG_I2C_SENSOR=m
#
# Mice
#
CONFIG_BUSMOUSE=m
# CONFIG_QIC02_TAPE is not set
#
# IPMI
#
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_KCS=m
CONFIG_IPMI_WATCHDOG=m
#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=m
CONFIG_NVRAM=m
CONFIG_RTC=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_SONYPI=m
#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
CONFIG_AGP=m
CONFIG_AGP_ALI=m
CONFIG_AGP_AMD=m
# CONFIG_AGP_AMD_8151 is not set
CONFIG_AGP_INTEL=m
CONFIG_AGP_NVIDIA=m
CONFIG_AGP_SIS=m
CONFIG_AGP_SWORKS=m
CONFIG_AGP_VIA=m
CONFIG_DRM=y
CONFIG_DRM_TDFX=m
CONFIG_DRM_GAMMA=m
CONFIG_DRM_R128=m
CONFIG_DRM_RADEON=m
CONFIG_DRM_I810=m
# CONFIG_DRM_I830 is not set
CONFIG_DRM_MGA=m
CONFIG_MWAVE=m
# CONFIG_RAW_DRIVER is not set
CONFIG_HANGCHECK_TIMER=m
#
# Multimedia devices
#
CONFIG_VIDEO_DEV=m
#
# Video For Linux
#
CONFIG_VIDEO_PROC_FS=y
#
# Video Adapters
#
CONFIG_VIDEO_BT848=m
CONFIG_VIDEO_PMS=m
CONFIG_VIDEO_BWQCAM=m
CONFIG_VIDEO_CQCAM=m
CONFIG_VIDEO_W9966=m
CONFIG_VIDEO_CPIA=m
CONFIG_VIDEO_CPIA_PP=m
CONFIG_VIDEO_CPIA_USB=m
CONFIG_VIDEO_SAA5249=m
CONFIG_TUNER_3036=m
CONFIG_VIDEO_STRADIS=m
CONFIG_VIDEO_ZORAN=m
CONFIG_VIDEO_ZORAN_BUZ=m
CONFIG_VIDEO_ZORAN_DC10=m
CONFIG_VIDEO_ZORAN_LML33=m
CONFIG_VIDEO_ZR36120=m
# CONFIG_VIDEO_MEYE is not set
# CONFIG_VIDEO_SAA7134 is not set
CONFIG_VIDEO_MXB=m
CONFIG_VIDEO_DPC=m
#
# Radio Adapters
#
CONFIG_RADIO_CADET=m
# CONFIG_RADIO_RTRACK is not set
# CONFIG_RADIO_RTRACK2 is not set
CONFIG_RADIO_AZTECH=m
CONFIG_RADIO_GEMTEK=m
CONFIG_RADIO_GEMTEK_PCI=m
CONFIG_RADIO_MAXIRADIO=m
CONFIG_RADIO_MAESTRO=m
CONFIG_RADIO_MIROPCM20=m
CONFIG_RADIO_MIROPCM20_RDS=m
CONFIG_RADIO_SF16FMI=m
# CONFIG_RADIO_TERRATEC is not set
# CONFIG_RADIO_TRUST is not set
# CONFIG_RADIO_TYPHOON is not set
CONFIG_RADIO_ZOLTRIX=m
#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set
CONFIG_VIDEO_SAA7146=m
CONFIG_VIDEO_VIDEOBUF=m
CONFIG_VIDEO_TUNER=m
CONFIG_VIDEO_BUF=m
CONFIG_VIDEO_BTCX=m
#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_JFS_FS=m
# CONFIG_JFS_POSIX_ACL is not set
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not set
CONFIG_XFS_FS=m
# CONFIG_XFS_RT is not set
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_POSIX_ACL is not set
CONFIG_MINIX_FS=m
CONFIG_ROMFS_FS=m
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=y
#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_ZISOFS_FS=y
# CONFIG_UDF_FS is not set
#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
# CONFIG_NTFS_RW is not set
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
# CONFIG_DEVFS_FS is not set
CONFIG_DEVPTS_FS=y
CONFIG_DEVPTS_FS_XATTR=y
CONFIG_DEVPTS_FS_SECURITY=y
CONFIG_TMPFS=y
CONFIG_RAMFS=y
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
CONFIG_AFFS_FS=m
CONFIG_HFS_FS=m
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_CRAMFS=y
# CONFIG_VXFS_FS is not set
CONFIG_HPFS_FS=m
CONFIG_QNX4FS_FS=m
# CONFIG_QNX4FS_RW is not set
CONFIG_SYSV_FS=m
CONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
#
# Network File Systems
#
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_NFS_V4=y
CONFIG_NFSD=m
# CONFIG_NFSD_V3 is not set
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=m
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_SMB_FS=m
# CONFIG_SMB_NLS_DEFAULT is not set
CONFIG_CIFS=m
CONFIG_NCP_FS=m
# CONFIG_NCPFS_PACKET_SIGNING is not set
# CONFIG_NCPFS_IOCTL_LOCKING is not set
# CONFIG_NCPFS_STRONG is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_OS2_NS=y
# CONFIG_NCPFS_SMALLDOS is not set
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_EXTRAS=y
CONFIG_CODA_FS=m
# CONFIG_INTERMEZZO_FS is not set
CONFIG_AFS_FS=m
CONFIG_RXRPC=m
#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y
#
# Native Language Support
#
CONFIG_NLS_DEFAULT="cp437"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_737=m
CONFIG_NLS_CODEPAGE_775=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
CONFIG_NLS_CODEPAGE_855=m
CONFIG_NLS_CODEPAGE_857=m
CONFIG_NLS_CODEPAGE_860=m
CONFIG_NLS_CODEPAGE_861=m
CONFIG_NLS_CODEPAGE_862=m
CONFIG_NLS_CODEPAGE_863=m
CONFIG_NLS_CODEPAGE_864=m
CONFIG_NLS_CODEPAGE_865=m
CONFIG_NLS_CODEPAGE_866=m
CONFIG_NLS_CODEPAGE_869=m
CONFIG_NLS_CODEPAGE_936=m
CONFIG_NLS_CODEPAGE_950=m
CONFIG_NLS_CODEPAGE_932=m
CONFIG_NLS_CODEPAGE_949=m
CONFIG_NLS_CODEPAGE_874=m
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
CONFIG_NLS_ISO8859_6=m
CONFIG_NLS_ISO8859_7=m
CONFIG_NLS_ISO8859_9=m
CONFIG_NLS_ISO8859_13=m
CONFIG_NLS_ISO8859_14=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_KOI8_U=m
CONFIG_NLS_UTF8=m
#
# Graphics support
#
CONFIG_FB=y
CONFIG_FB_CIRRUS=m
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_RIVA is not set
CONFIG_FB_I810=m
# CONFIG_FB_I810_GTF is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=m
CONFIG_PCI_CONSOLE=y
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
#
# Logo configuration
#
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
#
# Sound
#
CONFIG_SOUND=m
#
# Advanced Linux Sound Architecture
#
CONFIG_SND=m
CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SEQ_DUMMY is not set
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
#
# Generic devices
#
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_VIRMIDI is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set
#
# ISA devices
#
# CONFIG_SND_AD1816A is not set
# CONFIG_SND_AD1848 is not set
# CONFIG_SND_CS4231 is not set
# CONFIG_SND_CS4232 is not set
# CONFIG_SND_CS4236 is not set
# CONFIG_SND_ES968 is not set
# CONFIG_SND_ES1688 is not set
# CONFIG_SND_ES18XX is not set
# CONFIG_SND_GUSCLASSIC is not set
# CONFIG_SND_GUSEXTREME is not set
# CONFIG_SND_GUSMAX is not set
# CONFIG_SND_INTERWAVE is not set
# CONFIG_SND_INTERWAVE_STB is not set
# CONFIG_SND_OPTI92X_AD1848 is not set
# CONFIG_SND_OPTI92X_CS4231 is not set
# CONFIG_SND_OPTI93X is not set
# CONFIG_SND_SB8 is not set
# CONFIG_SND_SB16 is not set
# CONFIG_SND_SBAWE is not set
# CONFIG_SND_WAVEFRONT is not set
# CONFIG_SND_ALS100 is not set
# CONFIG_SND_AZT2320 is not set
# CONFIG_SND_CMI8330 is not set
# CONFIG_SND_DT019X is not set
# CONFIG_SND_OPL3SA2 is not set
# CONFIG_SND_SGALAXY is not set
#
# PCI devices
#
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_EMU10K1 is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_HDSP is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_YMFPCI is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_FM801 is not set
# CONFIG_SND_ICE1712 is not set
CONFIG_SND_ICE1724=m
# CONFIG_SND_INTEL8X0 is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_VIA82XX is not set
#
# ALSA USB devices
#
# CONFIG_SND_USB_AUDIO is not set
#
# Open Sound System
#
CONFIG_SOUND_PRIME=m
CONFIG_SOUND_BT878=m
CONFIG_SOUND_CMPCI=m
# CONFIG_SOUND_CMPCI_FM is not set
# CONFIG_SOUND_CMPCI_MIDI is not set
CONFIG_SOUND_CMPCI_JOYSTICK=y
CONFIG_SOUND_CMPCI_CM8738=y
CONFIG_SOUND_CMPCI_SPDIFINVERSE=y
CONFIG_SOUND_CMPCI_SPDIFLOOP=y
CONFIG_SOUND_CMPCI_SPEAKERS=2
CONFIG_SOUND_EMU10K1=m
CONFIG_MIDI_EMU10K1=y
CONFIG_SOUND_FUSION=m
CONFIG_SOUND_CS4281=m
CONFIG_SOUND_ES1370=m
CONFIG_SOUND_ES1371=m
CONFIG_SOUND_ESSSOLO1=m
CONFIG_SOUND_MAESTRO=m
CONFIG_SOUND_MAESTRO3=m
CONFIG_SOUND_ICH=m
# CONFIG_SOUND_RME96XX is not set
CONFIG_SOUND_SONICVIBES=m
CONFIG_SOUND_TRIDENT=m
CONFIG_SOUND_MSNDCLAS=m
CONFIG_MSNDCLAS_INIT_FILE="/etc/sound/msndinit.bin"
CONFIG_MSNDCLAS_PERM_FILE="/etc/sound/msndperm.bin"
CONFIG_SOUND_MSNDPIN=m
CONFIG_MSNDPIN_INIT_FILE="/etc/sound/pndspini.bin"
CONFIG_MSNDPIN_PERM_FILE="/etc/sound/pndsperm.bin"
CONFIG_SOUND_VIA82CXXX=m
# CONFIG_MIDI_VIA82CXXX is not set
CONFIG_SOUND_OSS=m
# CONFIG_SOUND_TRACEINIT is not set
# CONFIG_SOUND_DMAP is not set
CONFIG_SOUND_AD1816=m
CONFIG_SOUND_SGALAXY=m
# CONFIG_SOUND_ADLIB is not set
CONFIG_SOUND_ACI_MIXER=m
CONFIG_SOUND_CS4232=m
CONFIG_SOUND_SSCAPE=m
CONFIG_SOUND_GUS=m
# CONFIG_SOUND_GUS16 is not set
# CONFIG_SOUND_GUSMAX is not set
CONFIG_SOUND_VMIDI=m
CONFIG_SOUND_TRIX=m
CONFIG_SOUND_MSS=m
CONFIG_SOUND_MPU401=m
CONFIG_SOUND_NM256=m
CONFIG_SOUND_MAD16=m
# CONFIG_MAD16_OLDCARD is not set
CONFIG_SOUND_PAS=m
CONFIG_SOUND_PSS=m
# CONFIG_PSS_MIXER is not set
# CONFIG_PSS_HAVE_BOOT is not set
CONFIG_SOUND_SB=m
CONFIG_SOUND_AWE32_SYNTH=m
CONFIG_SOUND_WAVEFRONT=m
CONFIG_SOUND_MAUI=m
CONFIG_SOUND_YM3812=m
CONFIG_SOUND_OPL3SA1=m
CONFIG_SOUND_OPL3SA2=m
CONFIG_SOUND_YMFPCI=m
# CONFIG_SOUND_YMFPCI_LEGACY is not set
CONFIG_SOUND_UART6850=m
CONFIG_SOUND_AEDSP16=m
CONFIG_SC6600=y
CONFIG_SC6600_JOY=y
CONFIG_SC6600_CDROM=4
CONFIG_SC6600_CDROMBASE=0x0
# CONFIG_AEDSP16_MSS is not set
CONFIG_AEDSP16_SBPRO=y
CONFIG_AEDSP16_MPU401=y
CONFIG_SOUND_TVMIXER=m
#
# USB support
#
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
CONFIG_USB_BANDWIDTH=y
# CONFIG_USB_DYNAMIC_MINORS is not set
#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_UHCI_HCD=m
#
# USB Device Class drivers
#
CONFIG_USB_AUDIO=m
CONFIG_USB_BLUETOOTH_TTY=m
CONFIG_USB_MIDI=m
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
CONFIG_USB_STORAGE=m
CONFIG_USB_STORAGE_DEBUG=y
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_HP8200e=y
CONFIG_USB_STORAGE_SDDR09=y
# CONFIG_USB_STORAGE_SDDR55 is not set
CONFIG_USB_STORAGE_JUMPSHOT=y
#
# USB Human Interface Devices (HID)
#
CONFIG_USB_HID=m
CONFIG_USB_HIDINPUT=y
CONFIG_HID_FF=y
CONFIG_HID_PID=y
# CONFIG_LOGITECH_FF is not set
# CONFIG_THRUSTMASTER_FF is not set
CONFIG_USB_HIDDEV=y
#
# USB HID Boot Protocol drivers
#
CONFIG_USB_KBD=m
CONFIG_USB_MOUSE=m
# CONFIG_USB_AIPTEK is not set
CONFIG_USB_WACOM=m
CONFIG_USB_KBTAB=m
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_XPAD is not set
#
# USB Imaging devices
#
CONFIG_USB_MDC800=m
CONFIG_USB_SCANNER=m
CONFIG_USB_MICROTEK=m
# CONFIG_USB_HPUSBSCSI is not set
#
# USB Multimedia devices
#
CONFIG_USB_DABUSB=m
# CONFIG_USB_VICAM is not set
CONFIG_USB_DSBR=m
CONFIG_USB_IBMCAM=m
# CONFIG_USB_KONICAWC is not set
CONFIG_USB_OV511=m
# CONFIG_USB_PWC is not set
# CONFIG_USB_SE401 is not set
CONFIG_USB_STV680=m
#
# USB Network adaptors
#
CONFIG_USB_CATC=m
CONFIG_USB_KAWETH=m
CONFIG_USB_PEGASUS=m
# CONFIG_USB_RTL8150 is not set
CONFIG_USB_USBNET=m
#
# USB Host-to-Host Cables
#
CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_GENESYS=y
CONFIG_USB_NET1080=y
CONFIG_USB_PL2301=y
#
# Intelligent USB Devices/Gadgets
#
CONFIG_USB_ARMLINUX=y
CONFIG_USB_EPSON2888=y
CONFIG_USB_ZAURUS=y
CONFIG_USB_CDCETHER=y
#
# USB port drivers
#
CONFIG_USB_USS720=m
#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_WHITEHEAT=m
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
# CONFIG_USB_SERIAL_EMPEG is not set
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_VISOR=m
CONFIG_USB_SERIAL_IPAQ=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_EDGEPORT=m
# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
CONFIG_USB_SERIAL_KEYSPAN=m
# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set
# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_KOBIL_SCT=m
CONFIG_USB_SERIAL_MCT_U232=m
CONFIG_USB_SERIAL_PL2303=m
# CONFIG_USB_SERIAL_SAFE is not set
# CONFIG_USB_SERIAL_CYBERJACK is not set
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_OMNINET=m
CONFIG_USB_EZUSB=y
#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_TIGL is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_BRLVGER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_TEST is not set
# CONFIG_USB_GADGET is not set
#
# Bluetooth support
#
# CONFIG_BT is not set
#
# Profiling support
#
# CONFIG_PROFILING is not set
#
# Kernel hacking
#
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
CONFIG_DEBUG_SLAB=y
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_KALLSYMS=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
# CONFIG_FRAME_POINTER is not set
CONFIG_X86_EXTRA_IRQS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
#
# Security options
#
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_CAPABILITIES=y
CONFIG_SECURITY_ROOTPLUG=m
#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
CONFIG_CRYPTO_DEFLATE=m
CONFIG_CRYPTO_TEST=y
#
# Library routines
#
CONFIG_CRC32=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_X86_BIOS_REBOOT=y
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: sparse errors
2003-05-28 5:38 sparse errors Ryan Anderson
@ 2003-05-28 14:16 ` Linus Torvalds
2003-05-28 14:35 ` Carl-Daniel Hailfinger
2003-05-28 14:39 ` Linus Torvalds
1 sibling, 1 reply; 17+ messages in thread
From: Linus Torvalds @ 2003-05-28 14:16 UTC (permalink / raw)
To: Ryan Anderson; +Cc: linux-kernel
On Wed, 28 May 2003, Ryan Anderson wrote:
>
> I'm not totally grokking how sparse is put together yet, but I've got
> this:
>
> Some symbols with type SYM_NODE are getting ctype->base_type==NULL,
This means they have no type at all, either because of a parse error, or
because the lazy evaluation hasn't evaluated it yet (ie it was a tad _too_
lazy).
> causing a segfault in type_difference:422. (If I work around that one,
> there's another spot at line 680. I started to follow what was going on
> a bit at that point and realized they were probably symptoms, not the
> actual bug, so I stopped working around it.)
Right.
The first thing to do is to see where it happens, in gdb do
up (to get to compatible_assignment_types)
p expr->pos (to get where in the soruce file it is)
it's triggered in cramfs_uncompress_block():
zlib_inflateReset(&stream);
on "stream", and the problem _seems_ to be that the target type for the
function call comparison is non-existent.
And that, in turn, seems to be because of the old K&R style function
prototype due to
#ifndef OF /* function prototypes */
# ifdef STDC
# define OF(args) args
# else
# define OF(args) ()
# endif
#endif
and check not defining STDC.
It appears to be fixed by just adding -DSTDC to the check command line, to
make zlib use ANSI prototypes.
In short: sparse doesn't handle K&R function declarations very well,
although clearly it shouldn't have segfaulted (it should have warned about
it). I don't know why it didn't warn.
> Oh, BTW, the way you have struct ctype_sym declared inside struct symbol
> confuses the crap out of gdb, but gcc appears to like it, so... *shrug*.
Yeah, gdb is crap when it comes to anonymous structures, but I can't live
without them these days, so..
> Should this be cc:ed to linux-kernel, or do you have another place in
> mind?
It probably shouldn't be CC'd to linux-kernel, but there isn't any other
place either.
Linus
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: sparse errors
2003-05-28 14:16 ` Linus Torvalds
@ 2003-05-28 14:35 ` Carl-Daniel Hailfinger
2003-05-28 14:51 ` Dave Jones
0 siblings, 1 reply; 17+ messages in thread
From: Carl-Daniel Hailfinger @ 2003-05-28 14:35 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Ryan Anderson, linux-kernel, postmaster
Linus Torvalds wrote:
> On Wed, 28 May 2003, Ryan Anderson wrote:
>
>>I'm not totally grokking how sparse is put together yet, but I've got
>>this:
[...]
>>Should this be cc:ed to linux-kernel, or do you have another place in
>>mind?
>
>
> It probably shouldn't be CC'd to linux-kernel, but there isn't any other
> place either.
>
> Linus
Maybe create a new list:
linux-source-analyzers@vger.kernel.org
or something like that.
Carl-Daniel
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: sparse errors
2003-05-28 14:35 ` Carl-Daniel Hailfinger
@ 2003-05-28 14:51 ` Dave Jones
0 siblings, 0 replies; 17+ messages in thread
From: Dave Jones @ 2003-05-28 14:51 UTC (permalink / raw)
To: Carl-Daniel Hailfinger
Cc: Linus Torvalds, Ryan Anderson, linux-kernel, postmaster
On Wed, May 28, 2003 at 04:35:13PM +0200, Carl-Daniel Hailfinger wrote:
> > It probably shouldn't be CC'd to linux-kernel, but there isn't any other
> > place either.
> Maybe create a new list:
>
> linux-source-analyzers@vger.kernel.org
>
> or something like that.
kernel-janitor-discuss@lists.sf.net has been used in the past for discussion
of such things a few times.
Dave
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: sparse errors
2003-05-28 5:38 sparse errors Ryan Anderson
2003-05-28 14:16 ` Linus Torvalds
@ 2003-05-28 14:39 ` Linus Torvalds
1 sibling, 0 replies; 17+ messages in thread
From: Linus Torvalds @ 2003-05-28 14:39 UTC (permalink / raw)
To: Ryan Anderson; +Cc: linux-kernel
On Wed, 28 May 2003, Ryan Anderson wrote:
>
> Some symbols with type SYM_NODE are getting ctype->base_type==NULL,
> causing a segfault in type_difference:422.
Fixed like this, causing the proper warning..
Linus
---
# This is a BitKeeper generated patch for the following project:
# Project Name: TSCT - The Silly C Tokenizer
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.345 -> 1.346
# parse.c 1.97 -> 1.98
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/05/28 torvalds@home.transmeta.com 1.346
# Check whether a parameter declaration is a type before trying
# to parse it as a type.
# --------------------------------------------
#
diff -Nru a/parse.c b/parse.c
--- a/parse.c Wed May 28 07:38:53 2003
+++ b/parse.c Wed May 28 07:38:53 2003
@@ -886,6 +886,10 @@
break;
}
+ if (!lookup_type(token)) {
+ warn(token->pos, "non-ANSI parameter list");
+ break;
+ }
token = parameter_declaration(token, &sym);
/* Special case: (void) */
if (!*list && !sym->ident && sym->ctype.base_type == &void_ctype)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Sparse errors
@ 2019-03-28 18:34 Bharath Vedartham
2019-03-28 18:37 ` Greg KH
2019-03-28 18:57 ` Ozgur Kara
0 siblings, 2 replies; 17+ messages in thread
From: Bharath Vedartham @ 2019-03-28 18:34 UTC (permalink / raw)
To: kernelnewbies
Hey all,
When I run sparse, I get sparse errors. Sparse says "too many errors".
For example when I run: make C=2 fs/ext4/
This is the error messages I get for one of the files.
CHECK fs/ext4/ioctl.c
./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
'@'
./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/compiler.h:208:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/compiler.h:214:8: error: attribute '__gnu_inline__':
unknown attribute
./arch/x86/include/asm/barrier.h:36:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/kasan-checks.h:9:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/kasan-checks.h:11:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/compiler.h:271:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/compiler.h:302:8: error: attribute '__gnu_inline__':
unknown attribute
./arch/x86/include/asm/bitops.h:66:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:89:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:104:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:126:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:132:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:137:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:162:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:177:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:191:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:212:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:224:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:239:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:258:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:279:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:291:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:311:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:316:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:322:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:354:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:368:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:382:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:404:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:445:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/bitops.h:487:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/sched.h:13:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/arch_hweight.h:17:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/arch_hweight.h:28:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/arch_hweight.h:33:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/asm/arch_hweight.h:45:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/uapi/asm/swab.h:8:8: error: attribute
'__gnu_inline__': unknown attribute
./arch/x86/include/uapi/asm/swab.h:15:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/swab.h:47:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:56:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:65:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:78:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:87:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:161:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:174:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:187:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:202:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:217:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:230:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:242:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:255:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:270:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/swab.h:285:8: error: attribute '__gnu_inline__':
unknown attribute
./include/uapi/linux/byteorder/little_endian.h:44:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:48:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:52:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:56:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:60:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:64:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:68:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:72:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:76:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:80:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:84:8: error: attribute
'__gnu_inline__': unknown attribute
./include/uapi/linux/byteorder/little_endian.h:88:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:144:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:149:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:154:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:160:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:168:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:176:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:181:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:186:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:191:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/byteorder/generic.h:199:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:12:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:18:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:24:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:53:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:58:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:63:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:68:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:73:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:78:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:83:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:88:8: error: attribute
'__gnu_inline__': unknown attribute
./include/asm-generic/bitops/le.h:93:8: error: attribute
'__gnu_inline__': unknown attribute
./include/linux/bitops.h:43:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:51:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:61:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:71:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:81:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:91:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:101:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:111:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:121:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:131:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:143:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:154:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:160:8: error: attribute '__gnu_inline__':
unknown attribute
./include/linux/bitops.h:167:8: error: too many errors
I am using gcc 5.4.
I am unable to debug this issue and am not finding much help on the
internet.
Please do ask if more info is required.
Thank you
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2019-03-28 18:34 Sparse errors Bharath Vedartham
@ 2019-03-28 18:37 ` Greg KH
2019-03-28 19:03 ` Ozgur Kara
2019-03-28 19:23 ` Bharath Vedartham
2019-03-28 18:57 ` Ozgur Kara
1 sibling, 2 replies; 17+ messages in thread
From: Greg KH @ 2019-03-28 18:37 UTC (permalink / raw)
To: Bharath Vedartham; +Cc: kernelnewbies
On Fri, Mar 29, 2019 at 12:04:17AM +0530, Bharath Vedartham wrote:
> Hey all,
>
> When I run sparse, I get sparse errors. Sparse says "too many errors".
> For example when I run: make C=2 fs/ext4/
> This is the error messages I get for one of the files.
> CHECK fs/ext4/ioctl.c
> ./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
> '@'
> ./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
> unknown attribute
<snip>
Upgrade your version of sparse, use the version on git.kernel.org and
you should be fine.
good luck!
greg k-h
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2019-03-28 18:37 ` Greg KH
@ 2019-03-28 19:03 ` Ozgur Kara
2019-03-28 19:23 ` Bharath Vedartham
1 sibling, 0 replies; 17+ messages in thread
From: Ozgur Kara @ 2019-03-28 19:03 UTC (permalink / raw)
To: Greg KH, Bharath Vedartham; +Cc: kernelnewbies@kernelnewbies.org
28.03.2019, 22:38, "Greg KH" <greg@kroah.com>:
> On Fri, Mar 29, 2019 at 12:04:17AM +0530, Bharath Vedartham wrote:
>> Hey all,
>>
>> When I run sparse, I get sparse errors. Sparse says "too many errors".
>> For example when I run: make C=2 fs/ext4/
>> This is the error messages I get for one of the files.
>> CHECK fs/ext4/ioctl.c
>> ./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
>> '@'
>> ./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
>> unknown attribute
>
> <snip>
>
> Upgrade your version of sparse, use the version on git.kernel.org and
> you should be fine.
>
ops, i don't seen your e-mail and yes allright.
not problem with v0.6.0.
Regards
> good luck!
>
> greg k-h
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2019-03-28 18:37 ` Greg KH
2019-03-28 19:03 ` Ozgur Kara
@ 2019-03-28 19:23 ` Bharath Vedartham
1 sibling, 0 replies; 17+ messages in thread
From: Bharath Vedartham @ 2019-03-28 19:23 UTC (permalink / raw)
To: Greg KH; +Cc: kernelnewbies
On Thu, Mar 28, 2019 at 07:37:46PM +0100, Greg KH wrote:
> On Fri, Mar 29, 2019 at 12:04:17AM +0530, Bharath Vedartham wrote:
> > Hey all,
> >
> > When I run sparse, I get sparse errors. Sparse says "too many errors".
> > For example when I run: make C=2 fs/ext4/
> > This is the error messages I get for one of the files.
> > CHECK fs/ext4/ioctl.c
> > ./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
> > '@'
> > ./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
> > unknown attribute
>
> <snip>
>
> Upgrade your version of sparse, use the version on git.kernel.org and
> you should be fine.
>
> good luck!
>
> greg k-h
Just did that and it worked! Thanks!
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2019-03-28 18:34 Sparse errors Bharath Vedartham
2019-03-28 18:37 ` Greg KH
@ 2019-03-28 18:57 ` Ozgur Kara
2019-03-28 19:24 ` Bharath Vedartham
1 sibling, 1 reply; 17+ messages in thread
From: Ozgur Kara @ 2019-03-28 18:57 UTC (permalink / raw)
To: Bharath Vedartham, kernelnewbies@kernelnewbies.org
28.03.2019, 22:34, "Bharath Vedartham" <linux.bhar@gmail.com>:
> Hey all,
>
> When I run sparse, I get sparse errors. Sparse says "too many errors".
> For example when I run: make C=2 fs/ext4/
> This is the error messages I get for one of the files.
> CHECK fs/ext4/ioctl.c
> ./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
> '@'
> ./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/compiler.h:208:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/compiler.h:214:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./arch/x86/include/asm/barrier.h:36:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/kasan-checks.h:9:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/kasan-checks.h:11:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/compiler.h:271:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/compiler.h:302:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./arch/x86/include/asm/bitops.h:66:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:89:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:104:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:126:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:132:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:137:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:162:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:177:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:191:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:212:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:224:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:239:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:258:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:279:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:291:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:311:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:316:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:322:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:354:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:368:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:382:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:404:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:445:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/bitops.h:487:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/sched.h:13:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/arch_hweight.h:17:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/arch_hweight.h:28:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/arch_hweight.h:33:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/asm/arch_hweight.h:45:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/uapi/asm/swab.h:8:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./arch/x86/include/uapi/asm/swab.h:15:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/swab.h:47:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:56:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:65:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:78:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:87:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:161:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:174:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:187:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:202:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:217:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:230:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:242:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:255:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:270:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/swab.h:285:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:44:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:48:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:52:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:56:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:60:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:64:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:68:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:72:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:76:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:80:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:84:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/uapi/linux/byteorder/little_endian.h:88:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:144:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:149:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:154:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:160:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:168:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:176:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:181:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:186:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:191:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/byteorder/generic.h:199:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:12:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:18:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:24:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:53:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:58:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:63:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:68:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:73:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:78:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:83:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:88:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/asm-generic/bitops/le.h:93:8: error: attribute
> '__gnu_inline__': unknown attribute
> ./include/linux/bitops.h:43:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:51:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:61:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:71:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:81:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:91:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:101:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:111:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:121:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:131:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:143:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:154:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:160:8: error: attribute '__gnu_inline__':
> unknown attribute
> ./include/linux/bitops.h:167:8: error: too many errors
>
> I am using gcc 5.4.
Hello,
what is your sparse version?
the latest version 0.6.0 has been released.
git://git.kernel.org/pub/scm/devel/sparse/sparse.git
Regards
> I am unable to debug this issue and am not finding much help on the
> internet.
>
> Please do ask if more info is required.
>
> Thank you
>
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2019-03-28 18:57 ` Ozgur Kara
@ 2019-03-28 19:24 ` Bharath Vedartham
0 siblings, 0 replies; 17+ messages in thread
From: Bharath Vedartham @ 2019-03-28 19:24 UTC (permalink / raw)
To: Ozgur Kara; +Cc: kernelnewbies@kernelnewbies.org
On Thu, Mar 28, 2019 at 10:57:34PM +0400, Ozgur Kara wrote:
>
>
> 28.03.2019, 22:34, "Bharath Vedartham" <linux.bhar@gmail.com>:
> > Hey all,
> >
> > When I run sparse, I get sparse errors. Sparse says "too many errors".
> > For example when I run: make C=2 fs/ext4/
> > This is the error messages I get for one of the files.
> > CHECK fs/ext4/ioctl.c
> > ./arch/x86/include/asm/nospec-branch.h:146:38: warning: Unknown escape
> > '@'
> > ./include/linux/compiler.h:190:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/compiler.h:208:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/compiler.h:214:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./arch/x86/include/asm/barrier.h:36:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/kasan-checks.h:9:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/kasan-checks.h:11:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/compiler.h:271:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/compiler.h:302:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./arch/x86/include/asm/bitops.h:66:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:89:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:104:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:126:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:132:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:137:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:162:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:177:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:191:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:212:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:224:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:239:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:258:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:279:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:291:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:311:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:316:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:322:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:354:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:368:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:382:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:404:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:445:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/bitops.h:487:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/sched.h:13:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/arch_hweight.h:17:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/arch_hweight.h:28:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/arch_hweight.h:33:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/asm/arch_hweight.h:45:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/uapi/asm/swab.h:8:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./arch/x86/include/uapi/asm/swab.h:15:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/swab.h:47:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:56:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:65:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:78:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:87:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:161:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:174:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:187:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:202:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:217:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:230:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:242:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:255:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:270:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/swab.h:285:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:44:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:48:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:52:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:56:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:60:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:64:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:68:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:72:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:76:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:80:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:84:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/uapi/linux/byteorder/little_endian.h:88:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:144:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:149:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:154:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:160:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:168:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:176:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:181:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:186:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:191:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/byteorder/generic.h:199:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:12:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:18:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:24:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:53:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:58:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:63:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:68:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:73:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:78:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:83:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:88:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/asm-generic/bitops/le.h:93:8: error: attribute
> > '__gnu_inline__': unknown attribute
> > ./include/linux/bitops.h:43:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:51:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:61:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:71:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:81:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:91:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:101:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:111:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:121:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:131:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:143:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:154:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:160:8: error: attribute '__gnu_inline__':
> > unknown attribute
> > ./include/linux/bitops.h:167:8: error: too many errors
> >
> > I am using gcc 5.4.
>
>
> Hello,
>
> what is your sparse version?
> the latest version 0.6.0 has been released.
>
> git://git.kernel.org/pub/scm/devel/sparse/sparse.git
>
> Regards
>
I am running sparse 0.5.0. Everything is fine after 0.6.0! Thanks!
> > I am unable to debug this issue and am not finding much help on the
> > internet.
> >
> > Please do ask if more info is required.
> >
> > Thank you
> >
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
^ permalink raw reply [flat|nested] 17+ messages in thread
* Sparse errors
@ 2021-05-25 19:32 Pierre-Louis Bossart
2021-05-26 6:02 ` Dan Carpenter
2021-05-26 7:40 ` Takashi Iwai
0 siblings, 2 replies; 17+ messages in thread
From: Pierre-Louis Bossart @ 2021-05-25 19:32 UTC (permalink / raw)
To: Takashi Iwai, alsa-devel; +Cc: Colin Ian King, Dan Carpenter
Hi Takashi,
Sparse reports a lot of new issues in our last checks with more options:
export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all -Wno-bitwise-pointer
-Wno-pointer-arith -Wno-typesign -Wnoshadow -Wno-sizeof-bool"
make -k sound/ C=2
most are linked to the __user and pcm_format_t restricted types, but I
found the simpler ones below which are useless comparisons. I can send a
patch for the last but not sure how to address the first two.
Thanks for your feedback
-Pierre
sound/core/info.c:95:38: error: self-comparison always evaluates to false
if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
return false;
not sure what the second comparison is meant to check?
sound/drivers/opl3/opl3_midi.c:183:60: error: self-comparison always
evaluates to false
This indeed makes no sense. the voice_time and vp->time are not changed
in the loop, the test is either redundant or something else is missing.
sound/pci/lx6464es/lx_core.c:677:34: error: self-comparison always
evaluates to false
That seems like dead code indeed:
u32 channels = runtime->channels;
if (runtime->channels != channels)
dev_err(chip->card->dev, "channel count mismatch: %d vs %d",
runtime->channels, channels);
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2021-05-25 19:32 Pierre-Louis Bossart
@ 2021-05-26 6:02 ` Dan Carpenter
2021-05-26 7:40 ` Takashi Iwai
1 sibling, 0 replies; 17+ messages in thread
From: Dan Carpenter @ 2021-05-26 6:02 UTC (permalink / raw)
To: Pierre-Louis Bossart; +Cc: Takashi Iwai, Colin Ian King, alsa-devel
On Tue, May 25, 2021 at 02:32:27PM -0500, Pierre-Louis Bossart wrote:
> Hi Takashi,
> Sparse reports a lot of new issues in our last checks with more options:
>
> export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all -Wno-bitwise-pointer
> -Wno-pointer-arith -Wno-typesign -Wnoshadow -Wno-sizeof-bool"
> make -k sound/ C=2
>
> most are linked to the __user and pcm_format_t restricted types, but I found
> the simpler ones below which are useless comparisons. I can send a patch for
> the last but not sure how to address the first two.
>
> Thanks for your feedback
> -Pierre
>
> sound/core/info.c:95:38: error: self-comparison always evaluates to false
>
> if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
> return false;
>
> not sure what the second comparison is meant to check?
It's checking for if a 32 bit system is using the upper 32 bits of a
u64.
This one is valid, the rest are nonsense code.
regards,
dan carpenter
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Sparse errors
2021-05-25 19:32 Pierre-Louis Bossart
2021-05-26 6:02 ` Dan Carpenter
@ 2021-05-26 7:40 ` Takashi Iwai
2021-05-26 14:17 ` Pierre-Louis Bossart
1 sibling, 1 reply; 17+ messages in thread
From: Takashi Iwai @ 2021-05-26 7:40 UTC (permalink / raw)
To: Pierre-Louis Bossart; +Cc: Colin Ian King, alsa-devel, Dan Carpenter
On Tue, 25 May 2021 21:32:27 +0200,
Pierre-Louis Bossart wrote:
>
> Hi Takashi,
> Sparse reports a lot of new issues in our last checks with more options:
>
> export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all
> -Wno-bitwise-pointer -Wno-pointer-arith -Wno-typesign -Wnoshadow
> -Wno-sizeof-bool"
> make -k sound/ C=2
>
> most are linked to the __user and pcm_format_t restricted types, but I
> found the simpler ones below which are useless comparisons. I can send
> a patch for the last but not sure how to address the first two.
>
> Thanks for your feedback
> -Pierre
>
> sound/core/info.c:95:38: error: self-comparison always evaluates to false
>
> if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
> return false;
>
> not sure what the second comparison is meant to check?
As Dan suggested, it's a check only for 32bit architecture for a 64bit
value.
> sound/drivers/opl3/opl3_midi.c:183:60: error: self-comparison always
> evaluates to false
>
> This indeed makes no sense. the voice_time and vp->time are not
> changed in the loop, the test is either redundant or something else is
> missing.
The code doesn't look right, indeed. It's likely meant to be vp2
instead of vp.
--- a/sound/drivers/opl3/opl3_midi.c
+++ b/sound/drivers/opl3/opl3_midi.c
@@ -180,8 +180,7 @@ static int opl3_get_voice(struct snd_opl3 *opl3, int instr_4op,
if (vp2->state == SNDRV_OPL3_ST_ON_2OP) {
/* kill two voices, EXPENSIVE */
bp++;
- voice_time = (voice_time > vp->time) ?
- voice_time : vp->time;
+ voice_time = max(voice_time, vp2->time);
}
} else {
/* allocate 2op voice */
> sound/pci/lx6464es/lx_core.c:677:34: error: self-comparison always
> evaluates to false
>
> That seems like dead code indeed:
>
> u32 channels = runtime->channels;
>
> if (runtime->channels != channels)
> dev_err(chip->card->dev, "channel count mismatch: %d vs %d",
> runtime->channels, channels);
Yes, this can be deleted.
thanks,
Takashi
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: Sparse errors
2021-05-26 7:40 ` Takashi Iwai
@ 2021-05-26 14:17 ` Pierre-Louis Bossart
2021-05-26 15:21 ` Takashi Iwai
2021-05-26 15:24 ` Dan Carpenter
0 siblings, 2 replies; 17+ messages in thread
From: Pierre-Louis Bossart @ 2021-05-26 14:17 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Colin Ian King, alsa-devel, Dan Carpenter
On 5/26/21 2:40 AM, Takashi Iwai wrote:
> On Tue, 25 May 2021 21:32:27 +0200,
> Pierre-Louis Bossart wrote:
>>
>> Hi Takashi,
>> Sparse reports a lot of new issues in our last checks with more options:
>>
>> export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all
>> -Wno-bitwise-pointer -Wno-pointer-arith -Wno-typesign -Wnoshadow
>> -Wno-sizeof-bool"
>> make -k sound/ C=2
>>
>> most are linked to the __user and pcm_format_t restricted types, but I
>> found the simpler ones below which are useless comparisons. I can send
>> a patch for the last but not sure how to address the first two.
>>
>> Thanks for your feedback
>> -Pierre
>>
>> sound/core/info.c:95:38: error: self-comparison always evaluates to false
>>
>> if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
>> return false;
>>
>> not sure what the second comparison is meant to check?
>
> As Dan suggested, it's a check only for 32bit architecture for a 64bit
> value.
Isn't there a better way to check this?
>> sound/drivers/opl3/opl3_midi.c:183:60: error: self-comparison always
>> evaluates to false
>>
>> This indeed makes no sense. the voice_time and vp->time are not
>> changed in the loop, the test is either redundant or something else is
>> missing.
>
> The code doesn't look right, indeed. It's likely meant to be vp2
> instead of vp.
>
> --- a/sound/drivers/opl3/opl3_midi.c
> +++ b/sound/drivers/opl3/opl3_midi.c
> @@ -180,8 +180,7 @@ static int opl3_get_voice(struct snd_opl3 *opl3, int instr_4op,
> if (vp2->state == SNDRV_OPL3_ST_ON_2OP) {
> /* kill two voices, EXPENSIVE */
> bp++;
> - voice_time = (voice_time > vp->time) ?
> - voice_time : vp->time;
> + voice_time = max(voice_time, vp2->time);
> }
> } else {
> /* allocate 2op voice */
It's really old code, unchanged since the first git commit in 2005...
Are you comfortable changing this code? One of those cases where if
people didn't notice an issue in 16+ years maybe no one cares or even
uses this driver...
>> sound/pci/lx6464es/lx_core.c:677:34: error: self-comparison always
>> evaluates to false
>>
>> That seems like dead code indeed:
>>
>> u32 channels = runtime->channels;
>>
>> if (runtime->channels != channels)
>> dev_err(chip->card->dev, "channel count mismatch: %d vs %d",
>> runtime->channels, channels);
>
> Yes, this can be deleted.
I'll send a patch for this, thanks for the feedback.
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: Sparse errors
2021-05-26 14:17 ` Pierre-Louis Bossart
@ 2021-05-26 15:21 ` Takashi Iwai
2021-05-26 15:24 ` Dan Carpenter
1 sibling, 0 replies; 17+ messages in thread
From: Takashi Iwai @ 2021-05-26 15:21 UTC (permalink / raw)
To: Pierre-Louis Bossart; +Cc: Colin Ian King, alsa-devel, Dan Carpenter
On Wed, 26 May 2021 16:17:18 +0200,
Pierre-Louis Bossart wrote:
>
>
>
> On 5/26/21 2:40 AM, Takashi Iwai wrote:
> > On Tue, 25 May 2021 21:32:27 +0200,
> > Pierre-Louis Bossart wrote:
> >>
> >> Hi Takashi,
> >> Sparse reports a lot of new issues in our last checks with more options:
> >>
> >> export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all
> >> -Wno-bitwise-pointer -Wno-pointer-arith -Wno-typesign -Wnoshadow
> >> -Wno-sizeof-bool"
> >> make -k sound/ C=2
> >>
> >> most are linked to the __user and pcm_format_t restricted types, but I
> >> found the simpler ones below which are useless comparisons. I can send
> >> a patch for the last but not sure how to address the first two.
> >>
> >> Thanks for your feedback
> >> -Pierre
> >>
> >> sound/core/info.c:95:38: error: self-comparison always evaluates to false
> >>
> >> if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
> >> return false;
> >>
> >> not sure what the second comparison is meant to check?
> >
> > As Dan suggested, it's a check only for 32bit architecture for a 64bit
> > value.
>
> Isn't there a better way to check this?
Sure, there are hundreds other ways, but they might be longer :)
If any, a comment would be deserved.
> >> sound/drivers/opl3/opl3_midi.c:183:60: error: self-comparison always
> >> evaluates to false
> >>
> >> This indeed makes no sense. the voice_time and vp->time are not
> >> changed in the loop, the test is either redundant or something else is
> >> missing.
> >
> > The code doesn't look right, indeed. It's likely meant to be vp2
> > instead of vp.
> >
> > --- a/sound/drivers/opl3/opl3_midi.c
> > +++ b/sound/drivers/opl3/opl3_midi.c
> > @@ -180,8 +180,7 @@ static int opl3_get_voice(struct snd_opl3 *opl3, int instr_4op,
> > if (vp2->state == SNDRV_OPL3_ST_ON_2OP) {
> > /* kill two voices, EXPENSIVE */
> > bp++;
> > - voice_time = (voice_time > vp->time) ?
> > - voice_time : vp->time;
> > + voice_time = max(voice_time, vp2->time);
> > }
> > } else {
> > /* allocate 2op voice */
>
> It's really old code, unchanged since the first git commit in
> 2005... Are you comfortable changing this code? One of those cases
> where if people didn't notice an issue in 16+ years maybe no one cares
> or even uses this driver...
It'll be a safe change, so I'd apply the fix.
It's about the choice of an OPL3 voice, and the function tries to find
the best one. The code seems to want to align with the timestamp of
the coupled voice, and even if it's not right, the impact is very
limited.
thanks,
Takashi
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: Sparse errors
2021-05-26 14:17 ` Pierre-Louis Bossart
2021-05-26 15:21 ` Takashi Iwai
@ 2021-05-26 15:24 ` Dan Carpenter
1 sibling, 0 replies; 17+ messages in thread
From: Dan Carpenter @ 2021-05-26 15:24 UTC (permalink / raw)
To: Pierre-Louis Bossart; +Cc: Takashi Iwai, Colin Ian King, alsa-devel
On Wed, May 26, 2021 at 09:17:18AM -0500, Pierre-Louis Bossart wrote:
>
>
> On 5/26/21 2:40 AM, Takashi Iwai wrote:
> > On Tue, 25 May 2021 21:32:27 +0200,
> > Pierre-Louis Bossart wrote:
> > >
> > > Hi Takashi,
> > > Sparse reports a lot of new issues in our last checks with more options:
> > >
> > > export ARCH=x86_64 CF="-Wsparse-error -Wsparse-all
> > > -Wno-bitwise-pointer -Wno-pointer-arith -Wno-typesign -Wnoshadow
> > > -Wno-sizeof-bool"
> > > make -k sound/ C=2
> > >
> > > most are linked to the __user and pcm_format_t restricted types, but I
> > > found the simpler ones below which are useless comparisons. I can send
> > > a patch for the last but not sure how to address the first two.
> > >
> > > Thanks for your feedback
> > > -Pierre
> > >
> > > sound/core/info.c:95:38: error: self-comparison always evaluates to false
> > >
> > > if (pos < 0 || (long) pos != pos || (ssize_t) count < 0)
> > > return false;
> > >
> > > not sure what the second comparison is meant to check?
> >
> > As Dan suggested, it's a check only for 32bit architecture for a 64bit
> > value.
>
> Isn't there a better way to check this?
>
I suppose you could do:
if (pos > ULONG_MAX) {
I think Smatch used to complain about code like that but it doesn't
now?
Really the correct thing is to fix the static checker because the code
is fine. To me as a human reader it was pretty obvious that the code
was deliberately checking that the value was still the same after a
cast.
regards,
dan carpenter
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2021-05-26 15:25 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-05-28 5:38 sparse errors Ryan Anderson
2003-05-28 14:16 ` Linus Torvalds
2003-05-28 14:35 ` Carl-Daniel Hailfinger
2003-05-28 14:51 ` Dave Jones
2003-05-28 14:39 ` Linus Torvalds
-- strict thread matches above, loose matches on Subject: below --
2019-03-28 18:34 Sparse errors Bharath Vedartham
2019-03-28 18:37 ` Greg KH
2019-03-28 19:03 ` Ozgur Kara
2019-03-28 19:23 ` Bharath Vedartham
2019-03-28 18:57 ` Ozgur Kara
2019-03-28 19:24 ` Bharath Vedartham
2021-05-25 19:32 Pierre-Louis Bossart
2021-05-26 6:02 ` Dan Carpenter
2021-05-26 7:40 ` Takashi Iwai
2021-05-26 14:17 ` Pierre-Louis Bossart
2021-05-26 15:21 ` Takashi Iwai
2021-05-26 15:24 ` Dan Carpenter
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.