* [bug] latest -git boot hang
@ 2008-10-10 20:30 Ingo Molnar
2008-10-10 20:40 ` Ingo Molnar
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-10 20:30 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-kernel, Andrew Morton, Jens Axboe, Thomas Gleixner,
H. Peter Anvin, Yinghai Lu
[-- Attachment #1: Type: text/plain, Size: 610 bytes --]
with latest -git (f6bccf6), -tip testing on one of my test-boxes found a
boot hang.
It just hangs during fsck, "Checking filesystems", so i suspect the
block IO changes.
Test system is ext3, athlon64, 1GB RAM, PATA - nothing fancy and very
dependable.
( i also saw a weird mount failure and panic and a weird segfault -
pointing in the direction of memory corruption. )
i'll try to narrow it down, get more debug info and possibly bisect it,
just wanted to give an advance warning that something is fishy with
-git.
This was with pure -git compiled to a bzImage, no other patches applied.
Ingo
[-- Attachment #2: config --]
[-- Type: text/plain, Size: 60348 bytes --]
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.27
# Fri Oct 10 22:11:36 2008
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
# CONFIG_X86_64 is not set
CONFIG_X86=y
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
# CONFIG_GENERIC_LOCKBREAK is not set
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_FAST_CMPXCHG_LOCAL=y
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
# CONFIG_GENERIC_GPIO is not set
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
# CONFIG_GENERIC_TIME_VSYSCALL is not set
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
# CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
# CONFIG_ZONE_DMA32 is not set
CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_AUDIT_ARCH is not set
CONFIG_ARCH_SUPPORTS_AOUT=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_X86_SMP=y
CONFIG_X86_32_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_KTIME_SCALAR=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_TASKSTATS=y
# CONFIG_TASK_DELAY_ACCT is not set
CONFIG_TASK_XACCT=y
# CONFIG_TASK_IO_ACCOUNTING is not set
CONFIG_AUDIT=y
# CONFIG_AUDITSYSCALL is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=21
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_NS=y
# CONFIG_CGROUP_DEVICE is not set
# CONFIG_CPUSETS is not set
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_GROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_RT_GROUP_SCHED=y
CONFIG_USER_SCHED=y
# CONFIG_CGROUP_SCHED is not set
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
# CONFIG_CGROUP_MEM_RES_CTLR is not set
# CONFIG_SYSFS_DEPRECATED_V2 is not set
CONFIG_RELAY=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLUB_DEBUG=y
# CONFIG_SLAB is not set
CONFIG_SLUB=y
# CONFIG_SLOB is not set
CONFIG_PROFILING=y
CONFIG_MARKERS=y
# CONFIG_OPROFILE is not set
CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
# CONFIG_HAVE_DMA_ATTRS is not set
CONFIG_USE_GENERIC_SMP_HELPERS=y
# CONFIG_HAVE_CLK is not set
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
# CONFIG_MODULES is not set
CONFIG_BLOCK=y
CONFIG_LBD=y
CONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_LSF is not set
# CONFIG_BLK_DEV_BSG is not set
CONFIG_BLK_DEV_INTEGRITY=y
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_CLASSIC_RCU=y
#
# Processor type and features
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_VSMP is not set
CONFIG_X86_RDC321X=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_PARAVIRT_GUEST=y
# CONFIG_VMI is not set
# CONFIG_KVM_CLOCK is not set
# CONFIG_KVM_GUEST is not set
CONFIG_LGUEST_GUEST=y
CONFIG_PARAVIRT=y
# CONFIG_PARAVIRT_CLOCK is not set
CONFIG_PARAVIRT_DEBUG=y
CONFIG_MEMTEST=y
# 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=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_CPU=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_XADD=y
CONFIG_X86_PPRO_FENCE=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=4
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_X86_DS=y
CONFIG_X86_PTRACE_BTS=y
# CONFIG_HPET_TIMER is not set
CONFIG_DMI=y
# CONFIG_IOMMU_HELPER is not set
CONFIG_NR_CPUS=8
# CONFIG_SCHED_SMT is not set
# CONFIG_SCHED_MC is not set
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
# CONFIG_X86_MCE_P4THERMAL is not set
CONFIG_VM86=y
# CONFIG_TOSHIBA is not set
CONFIG_I8K=y
CONFIG_X86_REBOOTFIXUPS=y
CONFIG_MICROCODE=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_SPARSEMEM_STATIC=y
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
# CONFIG_RESOURCES_64BIT is not set
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_HIGHPTE=y
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
CONFIG_X86_PAT=y
CONFIG_IRQBALANCE=y
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_SCHED_HRTICK=y
CONFIG_KEXEC=y
CONFIG_CRASH_DUMP=y
CONFIG_PHYSICAL_START=0x100000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x100000
# CONFIG_HOTPLUG_CPU is not set
CONFIG_COMPAT_VDSO=y
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE=""
# CONFIG_CMDLINE_OVERRIDE is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
# Power management options
#
# CONFIG_PM is not set
#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_DEBUG=y
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
#
# CPUFreq processor drivers
#
CONFIG_X86_POWERNOW_K6=y
# CONFIG_X86_POWERNOW_K7 is not set
CONFIG_X86_POWERNOW_K8=y
# CONFIG_X86_GX_SUSPMOD is not set
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
CONFIG_X86_SPEEDSTEP_ICH=y
# CONFIG_X86_SPEEDSTEP_SMI is not set
CONFIG_X86_P4_CLOCKMOD=y
CONFIG_X86_CPUFREQ_NFORCE2=y
# CONFIG_X86_LONGRUN is not set
CONFIG_X86_E_POWERSAVER=y
#
# shared options
#
CONFIG_X86_SPEEDSTEP_LIB=y
# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
# CONFIG_PCI_GOOLPC is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_OLPC=y
CONFIG_PCI_DOMAINS=y
# CONFIG_PCIEPORTBUS is not set
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
CONFIG_PCI_LEGACY=y
CONFIG_PCI_DEBUG=y
CONFIG_HT_IRQ=y
CONFIG_ISA_DMA_API=y
CONFIG_ISA=y
CONFIG_EISA=y
CONFIG_EISA_VLB_PRIMING=y
CONFIG_EISA_PCI_EISA=y
CONFIG_EISA_VIRTUAL_ROOT=y
CONFIG_EISA_NAMES=y
# CONFIG_MCA is not set
CONFIG_SCx200=y
CONFIG_SCx200HR_TIMER=y
CONFIG_OLPC=y
CONFIG_PCCARD=y
CONFIG_PCMCIA_DEBUG=y
# CONFIG_PCMCIA is not set
CONFIG_CARDBUS=y
#
# PC-card bridges
#
# CONFIG_YENTA is not set
CONFIG_PCMCIA_PROBE=y
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_FAKE is not set
CONFIG_HOTPLUG_PCI_COMPAQ=y
# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
CONFIG_HOTPLUG_PCI_IBM=y
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set
#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=y
# CONFIG_BINFMT_MISC is not set
CONFIG_NET=y
#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
CONFIG_XFRM_SUB_POLICY=y
CONFIG_XFRM_MIGRATE=y
# CONFIG_XFRM_STATISTICS is not set
CONFIG_XFRM_IPCOMP=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_ASK_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not set
CONFIG_IP_FIB_HASH=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
# CONFIG_IP_ROUTE_VERBOSE is not set
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
# CONFIG_IP_PNP_BOOTP is not set
# CONFIG_IP_PNP_RARP is not set
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE=y
CONFIG_ARPD=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
CONFIG_INET_LRO=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
CONFIG_TCP_CONG_ADVANCED=y
CONFIG_TCP_CONG_BIC=y
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=y
# CONFIG_TCP_CONG_HTCP is not set
CONFIG_TCP_CONG_HSTCP=y
# CONFIG_TCP_CONG_HYBLA is not set
CONFIG_TCP_CONG_VEGAS=y
CONFIG_TCP_CONG_SCALABLE=y
CONFIG_TCP_CONG_LP=y
CONFIG_TCP_CONG_VENO=y
CONFIG_TCP_CONG_YEAH=y
# CONFIG_TCP_CONG_ILLINOIS is not set
# CONFIG_DEFAULT_BIC is not set
CONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_TCP_MD5SIG=y
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
# CONFIG_IPV6_ROUTER_PREF is not set
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
# CONFIG_INET6_IPCOMP is not set
CONFIG_IPV6_MIP6=y
# CONFIG_INET6_XFRM_TUNNEL is not set
CONFIG_INET6_TUNNEL=y
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
CONFIG_INET6_XFRM_MODE_TUNNEL=y
CONFIG_INET6_XFRM_MODE_BEET=y
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=y
# CONFIG_IPV6_SIT is not set
CONFIG_IPV6_TUNNEL=y
CONFIG_IPV6_MULTIPLE_TABLES=y
CONFIG_IPV6_SUBTREES=y
CONFIG_IPV6_MROUTE=y
CONFIG_IPV6_PIMSM_V2=y
CONFIG_NETLABEL=y
CONFIG_NETWORK_SECMARK=y
# CONFIG_NETFILTER is not set
CONFIG_IP_DCCP=y
CONFIG_INET_DCCP_DIAG=y
CONFIG_IP_DCCP_ACKVEC=y
#
# DCCP CCIDs Configuration (EXPERIMENTAL)
#
CONFIG_IP_DCCP_CCID2=y
CONFIG_IP_DCCP_CCID2_DEBUG=y
CONFIG_IP_DCCP_CCID3=y
CONFIG_IP_DCCP_CCID3_DEBUG=y
CONFIG_IP_DCCP_CCID3_RTO=100
CONFIG_IP_DCCP_TFRC_LIB=y
CONFIG_IP_DCCP_TFRC_DEBUG=y
#
# DCCP Kernel Hacking
#
CONFIG_IP_DCCP_DEBUG=y
CONFIG_IP_SCTP=y
CONFIG_SCTP_DBG_MSG=y
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
CONFIG_STP=y
CONFIG_BRIDGE=y
CONFIG_VLAN_8021Q=y
# CONFIG_VLAN_8021Q_GVRP is not set
# CONFIG_DECNET is not set
CONFIG_LLC=y
CONFIG_LLC2=y
# CONFIG_IPX is not set
CONFIG_ATALK=y
CONFIG_DEV_APPLETALK=y
CONFIG_LTPC=y
# CONFIG_COPS is not set
CONFIG_IPDDP=y
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
CONFIG_X25=y
CONFIG_LAPB=y
# CONFIG_ECONET is not set
CONFIG_WAN_ROUTER=y
CONFIG_NET_SCHED=y
#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=y
# CONFIG_NET_SCH_HTB is not set
# CONFIG_NET_SCH_HFSC is not set
# CONFIG_NET_SCH_PRIO is not set
CONFIG_NET_SCH_RED=y
# CONFIG_NET_SCH_SFQ is not set
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
# CONFIG_NET_SCH_GRED is not set
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_NETEM=y
CONFIG_NET_SCH_INGRESS=y
#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=y
CONFIG_NET_CLS_TCINDEX=y
# CONFIG_NET_CLS_ROUTE4 is not set
# CONFIG_NET_CLS_FW is not set
CONFIG_NET_CLS_U32=y
CONFIG_CLS_U32_PERF=y
# CONFIG_CLS_U32_MARK is not set
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
# CONFIG_NET_CLS_FLOW is not set
# CONFIG_NET_EMATCH is not set
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=y
CONFIG_NET_ACT_GACT=y
# CONFIG_GACT_PROB is not set
CONFIG_NET_ACT_MIRRED=y
CONFIG_NET_ACT_NAT=y
CONFIG_NET_ACT_PEDIT=y
# CONFIG_NET_ACT_SIMP is not set
# CONFIG_NET_CLS_IND is not set
CONFIG_NET_SCH_FIFO=y
#
# Network testing
#
CONFIG_NET_PKTGEN=y
CONFIG_HAMRADIO=y
#
# Packet Radio protocols
#
# CONFIG_AX25 is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
CONFIG_BT=y
# CONFIG_BT_L2CAP is not set
# CONFIG_BT_SCO is not set
#
# Bluetooth device drivers
#
CONFIG_BT_HCIBTUSB=y
# CONFIG_BT_HCIBTSDIO is not set
CONFIG_BT_HCIUART=y
# CONFIG_BT_HCIUART_H4 is not set
CONFIG_BT_HCIUART_BCSP=y
# CONFIG_BT_HCIUART_LL is not set
CONFIG_BT_HCIBCM203X=y
CONFIG_BT_HCIBPA10X=y
CONFIG_BT_HCIBFUSB=y
CONFIG_BT_HCIVHCI=y
CONFIG_AF_RXRPC=y
CONFIG_AF_RXRPC_DEBUG=y
# CONFIG_RXKAD is not set
CONFIG_FIB_RULES=y
#
# Wireless
#
CONFIG_CFG80211=y
CONFIG_NL80211=y
CONFIG_WIRELESS_EXT=y
# CONFIG_WIRELESS_EXT_SYSFS is not set
CONFIG_MAC80211=y
#
# Rate control algorithm selection
#
CONFIG_MAC80211_RC_PID=y
CONFIG_MAC80211_RC_DEFAULT_PID=y
CONFIG_MAC80211_RC_DEFAULT="pid"
CONFIG_MAC80211_MESH=y
# CONFIG_MAC80211_LEDS is not set
# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_IEEE80211=y
# CONFIG_IEEE80211_DEBUG is not set
# CONFIG_IEEE80211_CRYPT_WEP is not set
CONFIG_IEEE80211_CRYPT_CCMP=y
CONFIG_IEEE80211_CRYPT_TKIP=y
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
#
# Device Drivers
#
#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
CONFIG_DEBUG_DRIVER=y
CONFIG_DEBUG_DEVRES=y
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_CONNECTOR=y
# CONFIG_PROC_EVENTS is not set
# CONFIG_MTD is not set
CONFIG_PARPORT=y
# CONFIG_PARPORT_PC is not set
# CONFIG_PARPORT_GSC is not set
CONFIG_PARPORT_AX88796=y
CONFIG_PARPORT_1284=y
CONFIG_PARPORT_NOT_PC=y
CONFIG_PNP=y
CONFIG_PNP_DEBUG=y
#
# Protocols
#
# CONFIG_ISAPNP is not set
CONFIG_PNPBIOS=y
CONFIG_PNPBIOS_PROC_FS=y
# CONFIG_PNPACPI is not set
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_FD is not set
CONFIG_BLK_DEV_XD=y
CONFIG_BLK_CPQ_DA=y
# CONFIG_BLK_CPQ_CISS_DA is not set
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=y
# CONFIG_BLK_DEV_COW_COMMON is not set
# CONFIG_BLK_DEV_LOOP is not set
CONFIG_BLK_DEV_NBD=y
CONFIG_BLK_DEV_SX8=y
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
# CONFIG_BLK_DEV_XIP is not set
CONFIG_CDROM_PKTCDVD=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=y
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_HD=y
CONFIG_MISC_DEVICES=y
# CONFIG_IBM_ASM is not set
# CONFIG_PHANTOM is not set
CONFIG_EEPROM_93CX6=y
CONFIG_SGI_IOC4=y
CONFIG_TIFM_CORE=y
CONFIG_TIFM_7XX1=y
CONFIG_ENCLOSURE_SERVICES=y
CONFIG_HP_ILO=y
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set
#
# SCSI device support
#
CONFIG_RAID_ATTRS=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
# CONFIG_SCSI_TGT is not set
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=y
CONFIG_CHR_DEV_OSST=y
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=y
# CONFIG_CHR_DEV_SCH is not set
CONFIG_SCSI_ENCLOSURE=y
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
# CONFIG_SCSI_LOGGING is not set
# CONFIG_SCSI_SCAN_ASYNC is not set
#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_LIBSAS is not set
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
CONFIG_BLK_DEV_3W_XXXX_RAID=y
CONFIG_SCSI_3W_9XXX=y
CONFIG_SCSI_7000FASST=y
CONFIG_SCSI_ACARD=y
# CONFIG_SCSI_AHA152X is not set
CONFIG_SCSI_AHA1542=y
CONFIG_SCSI_AHA1740=y
CONFIG_SCSI_AACRAID=y
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
CONFIG_AIC7XXX_RESET_DELAY_MS=5000
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
CONFIG_SCSI_DPT_I2O=y
CONFIG_SCSI_ADVANSYS=y
CONFIG_SCSI_IN2000=y
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
CONFIG_MEGARAID_LEGACY=y
# CONFIG_MEGARAID_SAS is not set
CONFIG_SCSI_HPTIOP=y
CONFIG_SCSI_BUSLOGIC=y
CONFIG_SCSI_FLASHPOINT=y
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_DTC3280 is not set
CONFIG_SCSI_EATA=y
# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
CONFIG_SCSI_EATA_MAX_TAGS=16
CONFIG_SCSI_FUTURE_DOMAIN=y
# CONFIG_SCSI_GDTH is not set
CONFIG_SCSI_GENERIC_NCR5380=y
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
CONFIG_SCSI_GENERIC_NCR53C400=y
CONFIG_SCSI_IPS=y
CONFIG_SCSI_INITIO=y
CONFIG_SCSI_INIA100=y
# CONFIG_SCSI_MVSAS is not set
# CONFIG_SCSI_NCR53C406A is not set
CONFIG_SCSI_STEX=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
# CONFIG_SCSI_IPR is not set
CONFIG_SCSI_PAS16=y
CONFIG_SCSI_QLOGIC_FAS=y
CONFIG_SCSI_QLOGIC_1280=y
CONFIG_SCSI_QLA_FC=y
CONFIG_SCSI_QLA_ISCSI=y
CONFIG_SCSI_LPFC=y
CONFIG_SCSI_SIM710=y
# CONFIG_SCSI_SYM53C416 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
CONFIG_SCSI_T128=y
# CONFIG_SCSI_U14_34F is not set
CONFIG_SCSI_ULTRASTOR=y
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not set
CONFIG_SCSI_DH=y
CONFIG_SCSI_DH_RDAC=y
CONFIG_SCSI_DH_HP_SW=y
CONFIG_SCSI_DH_EMC=y
CONFIG_SCSI_DH_ALUA=y
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
# CONFIG_SATA_PMP is not set
CONFIG_SATA_AHCI=y
CONFIG_SATA_SIL24=y
CONFIG_ATA_SFF=y
CONFIG_SATA_SVW=y
CONFIG_ATA_PIIX=y
# CONFIG_SATA_MV is not set
CONFIG_SATA_NV=y
CONFIG_PDC_ADMA=y
# CONFIG_SATA_QSTOR is not set
CONFIG_SATA_PROMISE=y
# CONFIG_SATA_SX4 is not set
CONFIG_SATA_SIL=y
# CONFIG_SATA_SIS is not set
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
# CONFIG_SATA_VITESSE is not set
CONFIG_SATA_INIC162X=y
# CONFIG_PATA_ALI is not set
CONFIG_PATA_AMD=y
CONFIG_PATA_ARTOP=y
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
CONFIG_PATA_CS5520=y
CONFIG_PATA_CS5530=y
CONFIG_PATA_CS5535=y
CONFIG_PATA_CS5536=y
CONFIG_PATA_CYPRESS=y
# CONFIG_PATA_EFAR is not set
CONFIG_ATA_GENERIC=y
# CONFIG_PATA_HPT366 is not set
CONFIG_PATA_HPT37X=y
CONFIG_PATA_HPT3X2N=y
# CONFIG_PATA_HPT3X3 is not set
CONFIG_PATA_IT821X=y
CONFIG_PATA_IT8213=y
CONFIG_PATA_JMICRON=y
CONFIG_PATA_LEGACY=y
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
CONFIG_PATA_MPIIX=y
CONFIG_PATA_OLDPIIX=y
CONFIG_PATA_NETCELL=y
CONFIG_PATA_NINJA32=y
CONFIG_PATA_NS87410=y
CONFIG_PATA_NS87415=y
CONFIG_PATA_OPTI=y
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
CONFIG_PATA_QDI=y
CONFIG_PATA_RADISYS=y
CONFIG_PATA_RZ1000=y
CONFIG_PATA_SC1200=y
CONFIG_PATA_SERVERWORKS=y
# CONFIG_PATA_PDC2027X is not set
CONFIG_PATA_SIL680=y
CONFIG_PATA_SIS=y
CONFIG_PATA_VIA=y
CONFIG_PATA_WINBOND=y
CONFIG_PATA_WINBOND_VLB=y
CONFIG_PATA_SCH=y
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not set
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
# CONFIG_MD_RAID456 is not set
CONFIG_MD_MULTIPATH=y
# CONFIG_MD_FAULTY is not set
# CONFIG_BLK_DEV_DM is not set
CONFIG_FUSION=y
# CONFIG_FUSION_SPI is not set
CONFIG_FUSION_FC=y
# CONFIG_FUSION_SAS is not set
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=y
CONFIG_FUSION_LAN=y
# CONFIG_FUSION_LOGGING is not set
#
# IEEE 1394 (FireWire) support
#
#
# Enable only one of the two stacks, unless you know what you are doing
#
# CONFIG_FIREWIRE is not set
CONFIG_IEEE1394=y
# CONFIG_IEEE1394_OHCI1394 is not set
# CONFIG_IEEE1394_PCILYNX is not set
# CONFIG_IEEE1394_SBP2 is not set
CONFIG_IEEE1394_ETH1394_ROM_ENTRY=y
CONFIG_IEEE1394_ETH1394=y
CONFIG_IEEE1394_RAWIO=y
# CONFIG_IEEE1394_VERBOSEDEBUG is not set
CONFIG_I2O=y
# CONFIG_I2O_LCT_NOTIFY_ON_CHANGES is not set
CONFIG_I2O_EXT_ADAPTEC=y
CONFIG_I2O_CONFIG=y
# CONFIG_I2O_CONFIG_OLD_IOCTL is not set
# CONFIG_I2O_BUS is not set
CONFIG_I2O_BLOCK=y
# CONFIG_I2O_SCSI is not set
CONFIG_I2O_PROC=y
CONFIG_MACINTOSH_DRIVERS=y
CONFIG_MAC_EMUMOUSEBTN=y
CONFIG_NETDEVICES=y
CONFIG_IFB=y
CONFIG_DUMMY=y
# CONFIG_BONDING is not set
CONFIG_MACVLAN=y
CONFIG_EQUALIZER=y
# CONFIG_TUN is not set
CONFIG_VETH=y
CONFIG_NET_SB1000=y
CONFIG_ARCNET=y
CONFIG_ARCNET_1201=y
# CONFIG_ARCNET_1051 is not set
CONFIG_ARCNET_RAW=y
# CONFIG_ARCNET_CAP is not set
CONFIG_ARCNET_COM90xx=y
CONFIG_ARCNET_COM90xxIO=y
CONFIG_ARCNET_RIM_I=y
CONFIG_ARCNET_COM20020=y
CONFIG_ARCNET_COM20020_ISA=y
# CONFIG_ARCNET_COM20020_PCI is not set
CONFIG_PHYLIB=y
#
# MII PHY device drivers
#
# CONFIG_MARVELL_PHY is not set
# CONFIG_DAVICOM_PHY is not set
# CONFIG_QSEMI_PHY is not set
# CONFIG_LXT_PHY is not set
CONFIG_CICADA_PHY=y
# CONFIG_VITESSE_PHY is not set
CONFIG_SMSC_PHY=y
# CONFIG_BROADCOM_PHY is not set
# CONFIG_ICPLUS_PHY is not set
CONFIG_REALTEK_PHY=y
CONFIG_FIXED_PHY=y
CONFIG_MDIO_BITBANG=y
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_HAPPYMEAL=y
CONFIG_SUNGEM=y
# CONFIG_CASSINI is not set
CONFIG_NET_VENDOR_3COM=y
# CONFIG_EL1 is not set
# CONFIG_EL2 is not set
# CONFIG_ELPLUS is not set
CONFIG_EL16=y
CONFIG_EL3=y
CONFIG_3C515=y
CONFIG_VORTEX=y
# CONFIG_TYPHOON is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
CONFIG_ENC28J60=y
CONFIG_ENC28J60_WRITEVERIFY=y
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NI52=y
# CONFIG_NI65 is not set
CONFIG_NET_TULIP=y
# CONFIG_DE2104X is not set
# CONFIG_TULIP is not set
CONFIG_DE4X5=y
CONFIG_WINBOND_840=y
# CONFIG_DM9102 is not set
CONFIG_ULI526X=y
CONFIG_PCMCIA_XIRCOM=y
CONFIG_AT1700=y
CONFIG_DEPCA=y
CONFIG_HP100=y
# CONFIG_NET_ISA is not set
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
CONFIG_AMD8111_ETH=y
# CONFIG_ADAPTEC_STARFIRE is not set
CONFIG_AC3200=y
CONFIG_APRICOT=y
# CONFIG_B44 is not set
CONFIG_FORCEDETH=y
# CONFIG_FORCEDETH_NAPI is not set
CONFIG_CS89x0=y
# CONFIG_EEPRO100 is not set
CONFIG_E100=y
# CONFIG_LNE390 is not set
CONFIG_FEALNX=y
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
CONFIG_NE3210=y
CONFIG_ES3210=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
CONFIG_8139TOO_PIO=y
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_8139TOO_8129=y
CONFIG_8139_OLD_RX_RESET=y
# CONFIG_R6040 is not set
CONFIG_SIS900=y
# CONFIG_EPIC100 is not set
CONFIG_SUNDANCE=y
# CONFIG_SUNDANCE_MMIO is not set
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not set
CONFIG_SC92031=y
CONFIG_NET_POCKET=y
CONFIG_ATP=y
CONFIG_DE600=y
CONFIG_DE620=y
CONFIG_NETDEV_1000=y
CONFIG_ACENIC=y
# CONFIG_ACENIC_OMIT_TIGON_I is not set
CONFIG_DL2K=y
# CONFIG_E1000 is not set
CONFIG_E1000E=y
CONFIG_IP1000=y
# CONFIG_IGB is not set
# CONFIG_NS83820 is not set
CONFIG_HAMACHI=y
CONFIG_YELLOWFIN=y
# CONFIG_R8169 is not set
# CONFIG_SIS190 is not set
CONFIG_SKGE=y
# CONFIG_SKGE_DEBUG is not set
# CONFIG_SKY2 is not set
CONFIG_VIA_VELOCITY=y
CONFIG_TIGON3=y
# CONFIG_BNX2 is not set
CONFIG_QLA3XXX=y
# CONFIG_ATL1 is not set
# CONFIG_ATL1E is not set
# CONFIG_NETDEV_10000 is not set
CONFIG_TR=y
CONFIG_IBMTR=y
CONFIG_IBMOL=y
CONFIG_IBMLS=y
CONFIG_3C359=y
CONFIG_TMS380TR=y
# CONFIG_TMSPCI is not set
CONFIG_SKISA=y
# CONFIG_PROTEON is not set
CONFIG_ABYSS=y
CONFIG_SMCTR=y
#
# Wireless LAN
#
CONFIG_WLAN_PRE80211=y
# CONFIG_STRIP is not set
CONFIG_ARLAN=y
CONFIG_WAVELAN=y
# CONFIG_WLAN_80211 is not set
# CONFIG_IWLWIFI_LEDS is not set
#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
CONFIG_USB_KAWETH=y
CONFIG_USB_PEGASUS=y
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set
CONFIG_WAN=y
# CONFIG_LANMEDIA is not set
CONFIG_HDLC=y
CONFIG_HDLC_RAW=y
# CONFIG_HDLC_RAW_ETH is not set
CONFIG_HDLC_CISCO=y
# CONFIG_HDLC_FR is not set
CONFIG_HDLC_PPP=y
CONFIG_HDLC_X25=y
# CONFIG_PCI200SYN is not set
CONFIG_WANXL=y
# CONFIG_PC300 is not set
CONFIG_PC300TOO=y
CONFIG_N2=y
CONFIG_C101=y
CONFIG_FARSYNC=y
CONFIG_DLCI=y
CONFIG_DLCI_MAX=8
# CONFIG_SDLA is not set
CONFIG_WAN_ROUTER_DRIVERS=y
# CONFIG_CYCLADES_SYNC is not set
# CONFIG_LAPBETHER is not set
CONFIG_X25_ASY=y
# CONFIG_SBNI is not set
CONFIG_FDDI=y
CONFIG_DEFXX=y
CONFIG_DEFXX_MMIO=y
# CONFIG_SKFP is not set
# CONFIG_HIPPI is not set
CONFIG_PLIP=y
CONFIG_PPP=y
CONFIG_PPP_MULTILINK=y
# CONFIG_PPP_FILTER is not set
CONFIG_PPP_ASYNC=y
CONFIG_PPP_SYNC_TTY=y
CONFIG_PPP_DEFLATE=y
CONFIG_PPP_BSDCOMP=y
CONFIG_PPP_MPPE=y
CONFIG_PPPOE=y
CONFIG_PPPOL2TP=y
# CONFIG_SLIP is not set
CONFIG_SLHC=y
CONFIG_NET_FC=y
CONFIG_NETCONSOLE=y
# CONFIG_NETCONSOLE_DYNAMIC is not set
CONFIG_NETPOLL=y
CONFIG_NETPOLL_TRAP=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_VIRTIO_NET=y
CONFIG_ISDN=y
# CONFIG_MISDN is not set
CONFIG_ISDN_I4L=y
# CONFIG_ISDN_PPP is not set
CONFIG_ISDN_AUDIO=y
CONFIG_ISDN_TTY_FAX=y
CONFIG_ISDN_X25=y
#
# ISDN feature submodules
#
# CONFIG_ISDN_DIVERSION is not set
#
# ISDN4Linux hardware drivers
#
#
# Passive cards
#
CONFIG_ISDN_DRV_HISAX=y
#
# D-channel protocol features
#
# CONFIG_HISAX_EURO is not set
# CONFIG_HISAX_1TR6 is not set
CONFIG_HISAX_NI1=y
CONFIG_HISAX_MAX_CARDS=8
#
# HiSax supported cards
#
CONFIG_HISAX_16_0=y
CONFIG_HISAX_16_3=y
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_S0BOX=y
CONFIG_HISAX_AVM_A1=y
CONFIG_HISAX_FRITZPCI=y
# CONFIG_HISAX_AVM_A1_PCMCIA is not set
CONFIG_HISAX_ELSA=y
CONFIG_HISAX_IX1MICROR2=y
CONFIG_HISAX_DIEHLDIVA=y
# CONFIG_HISAX_ASUSCOM is not set
CONFIG_HISAX_TELEINT=y
CONFIG_HISAX_HFCS=y
# CONFIG_HISAX_SEDLBAUER is not set
# CONFIG_HISAX_SPORTSTER is not set
CONFIG_HISAX_MIC=y
# CONFIG_HISAX_NETJET is not set
CONFIG_HISAX_NETJET_U=y
# CONFIG_HISAX_NICCY is not set
CONFIG_HISAX_ISURF=y
CONFIG_HISAX_HSTSAPHIR=y
CONFIG_HISAX_BKM_A4T=y
CONFIG_HISAX_SCT_QUADRO=y
CONFIG_HISAX_GAZEL=y
# CONFIG_HISAX_HFC_PCI is not set
# CONFIG_HISAX_W6692 is not set
# CONFIG_HISAX_HFC_SX is not set
CONFIG_HISAX_DEBUG=y
#
# HiSax PCMCIA card service modules
#
#
# HiSax sub driver modules
#
CONFIG_HISAX_ST5481=y
CONFIG_HISAX_HFCUSB=y
CONFIG_HISAX_HFC4S8S=y
CONFIG_HISAX_FRITZ_PCIPNP=y
CONFIG_HISAX_HDLC=y
#
# Active cards
#
# CONFIG_ISDN_DRV_ICN is not set
CONFIG_ISDN_DRV_PCBIT=y
CONFIG_ISDN_DRV_SC=y
CONFIG_ISDN_DRV_ACT2000=y
# CONFIG_ISDN_DRV_GIGASET is not set
CONFIG_ISDN_CAPI=y
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_CAPI_TRACE=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
# CONFIG_ISDN_CAPI_CAPI20 is not set
CONFIG_ISDN_CAPI_CAPIDRV=y
#
# CAPI hardware drivers
#
CONFIG_CAPI_AVM=y
CONFIG_ISDN_DRV_AVMB1_B1ISA=y
CONFIG_ISDN_DRV_AVMB1_B1PCI=y
# CONFIG_ISDN_DRV_AVMB1_B1PCIV4 is not set
CONFIG_ISDN_DRV_AVMB1_T1ISA=y
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=y
# CONFIG_ISDN_DRV_AVMB1_T1PCI is not set
CONFIG_ISDN_DRV_AVMB1_C4=y
CONFIG_CAPI_EICON=y
CONFIG_ISDN_DIVAS=y
# CONFIG_ISDN_DIVAS_BRIPCI is not set
CONFIG_ISDN_DIVAS_PRIPCI=y
CONFIG_ISDN_DIVAS_DIVACAPI=y
CONFIG_ISDN_DIVAS_USERIDI=y
# CONFIG_PHONE is not set
#
# Input device support
#
CONFIG_INPUT=y
CONFIG_INPUT_FF_MEMLESS=y
CONFIG_INPUT_POLLDEV=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=y
# CONFIG_INPUT_EVDEV is not set
CONFIG_INPUT_EVBUG=y
#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
CONFIG_KEYBOARD_XTKBD=y
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
# CONFIG_INPUT_PCSPKR is not set
# CONFIG_INPUT_WISTRON_BTNS is not set
CONFIG_INPUT_ATI_REMOTE=y
# CONFIG_INPUT_ATI_REMOTE2 is not set
CONFIG_INPUT_KEYSPAN_REMOTE=y
# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_YEALINK is not set
CONFIG_INPUT_UINPUT=y
#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
CONFIG_SERIO_PCIPS2=y
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set
#
# Character devices
#
CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_DEVKMEM=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_COMPUTONE=y
# CONFIG_ROCKETPORT is not set
# CONFIG_CYCLADES is not set
CONFIG_DIGIEPCA=y
# CONFIG_ESPSERIAL is not set
# CONFIG_MOXA_INTELLIO is not set
# CONFIG_MOXA_SMARTIO is not set
# CONFIG_ISI is not set
CONFIG_SYNCLINK=y
CONFIG_SYNCLINKMP=y
CONFIG_SYNCLINK_GT=y
# CONFIG_N_HDLC is not set
CONFIG_RISCOM8=y
CONFIG_SPECIALIX=y
CONFIG_SX=y
CONFIG_RIO=y
# CONFIG_RIO_OLDPCI is not set
# CONFIG_STALDRV is not set
CONFIG_NOZOMI=y
#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_FOURPORT=y
CONFIG_SERIAL_8250_ACCENT=y
# CONFIG_SERIAL_8250_BOCA is not set
# CONFIG_SERIAL_8250_EXAR_ST16C554 is not set
CONFIG_SERIAL_8250_HUB6=y
# CONFIG_SERIAL_8250_SHARE_IRQ is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
CONFIG_SERIAL_8250_RSA=y
#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_CONSOLE_POLL=y
CONFIG_SERIAL_JSM=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_PRINTER is not set
# CONFIG_PPDEV is not set
CONFIG_HVC_DRIVER=y
CONFIG_VIRTIO_CONSOLE=y
# CONFIG_IPMI_HANDLER is not set
# CONFIG_HW_RANDOM is not set
CONFIG_NVRAM=y
CONFIG_DTLK=y
CONFIG_R3964=y
# CONFIG_APPLICOM is not set
CONFIG_SONYPI=y
CONFIG_MWAVE=y
CONFIG_SCx200_GPIO=y
CONFIG_PC8736x_GPIO=y
CONFIG_NSC_GPIO=y
CONFIG_CS5535_GPIO=y
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=256
CONFIG_HANGCHECK_TIMER=y
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS=y
CONFIG_TCG_NSC=y
CONFIG_TCG_ATMEL=y
CONFIG_TCG_INFINEON=y
CONFIG_TELCLOCK=y
CONFIG_DEVPORT=y
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
# CONFIG_I2C_CHARDEV is not set
# CONFIG_I2C_HELPER_AUTO is not set
#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=y
CONFIG_I2C_ALGOPCF=y
CONFIG_I2C_ALGOPCA=y
#
# I2C Hardware Bus support
#
#
# PC SMBus host controller drivers
#
CONFIG_I2C_ALI1535=y
CONFIG_I2C_ALI1563=y
CONFIG_I2C_ALI15X3=y
CONFIG_I2C_AMD756=y
# CONFIG_I2C_AMD756_S4882 is not set
# CONFIG_I2C_AMD8111 is not set
CONFIG_I2C_I801=y
CONFIG_I2C_ISCH=y
CONFIG_I2C_PIIX4=y
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_SIS5595 is not set
CONFIG_I2C_SIS630=y
# CONFIG_I2C_SIS96X is not set
CONFIG_I2C_VIA=y
CONFIG_I2C_VIAPRO=y
#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
CONFIG_I2C_OCORES=y
# CONFIG_I2C_SIMTEC is not set
#
# External I2C/SMBus adapter drivers
#
CONFIG_I2C_PARPORT=y
# CONFIG_I2C_PARPORT_LIGHT is not set
CONFIG_I2C_TAOS_EVM=y
# CONFIG_I2C_TINY_USB is not set
#
# Graphics adapter I2C/DDC channel drivers
#
CONFIG_I2C_VOODOO3=y
#
# Other I2C/SMBus bus drivers
#
# CONFIG_I2C_PCA_ISA is not set
# CONFIG_I2C_PCA_PLATFORM is not set
CONFIG_SCx200_I2C=y
CONFIG_SCx200_I2C_SCL=12
CONFIG_SCx200_I2C_SDA=13
CONFIG_SCx200_ACB=y
#
# Miscellaneous I2C Chip support
#
# CONFIG_DS1682 is not set
CONFIG_AT24=y
# CONFIG_SENSORS_EEPROM is not set
CONFIG_SENSORS_PCF8574=y
CONFIG_PCF8575=y
CONFIG_SENSORS_PCA9539=y
CONFIG_SENSORS_PCF8591=y
CONFIG_SENSORS_MAX6875=y
CONFIG_SENSORS_TSL2550=y
CONFIG_I2C_DEBUG_CORE=y
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set
CONFIG_SPI=y
CONFIG_SPI_DEBUG=y
CONFIG_SPI_MASTER=y
#
# SPI Master Controller Drivers
#
CONFIG_SPI_BITBANG=y
CONFIG_SPI_BUTTERFLY=y
# CONFIG_SPI_LM70_LLP is not set
#
# SPI Protocol Masters
#
CONFIG_SPI_AT25=y
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_TLE62X0=y
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
# CONFIG_GPIOLIB is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
CONFIG_HWMON=y
CONFIG_HWMON_VID=y
CONFIG_SENSORS_ABITUGURU=y
CONFIG_SENSORS_ABITUGURU3=y
CONFIG_SENSORS_AD7414=y
CONFIG_SENSORS_AD7418=y
CONFIG_SENSORS_ADCXX=y
CONFIG_SENSORS_ADM1021=y
# CONFIG_SENSORS_ADM1025 is not set
CONFIG_SENSORS_ADM1026=y
CONFIG_SENSORS_ADM1029=y
CONFIG_SENSORS_ADM1031=y
# CONFIG_SENSORS_ADM9240 is not set
CONFIG_SENSORS_ADT7470=y
CONFIG_SENSORS_ADT7473=y
CONFIG_SENSORS_K8TEMP=y
CONFIG_SENSORS_ASB100=y
CONFIG_SENSORS_ATXP1=y
CONFIG_SENSORS_DS1621=y
CONFIG_SENSORS_I5K_AMB=y
CONFIG_SENSORS_F71805F=y
CONFIG_SENSORS_F71882FG=y
# CONFIG_SENSORS_F75375S is not set
CONFIG_SENSORS_FSCHER=y
CONFIG_SENSORS_FSCPOS=y
CONFIG_SENSORS_FSCHMD=y
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_CORETEMP is not set
CONFIG_SENSORS_IT87=y
CONFIG_SENSORS_LM63=y
# CONFIG_SENSORS_LM70 is not set
CONFIG_SENSORS_LM75=y
CONFIG_SENSORS_LM77=y
# CONFIG_SENSORS_LM78 is not set
CONFIG_SENSORS_LM80=y
CONFIG_SENSORS_LM83=y
CONFIG_SENSORS_LM85=y
CONFIG_SENSORS_LM87=y
CONFIG_SENSORS_LM90=y
# CONFIG_SENSORS_LM92 is not set
CONFIG_SENSORS_LM93=y
CONFIG_SENSORS_MAX1619=y
# CONFIG_SENSORS_MAX6650 is not set
CONFIG_SENSORS_PC87360=y
CONFIG_SENSORS_PC87427=y
CONFIG_SENSORS_SIS5595=y
CONFIG_SENSORS_DME1737=y
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
CONFIG_SENSORS_ADS7828=y
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
CONFIG_SENSORS_VT8231=y
# CONFIG_SENSORS_W83781D is not set
CONFIG_SENSORS_W83791D=y
CONFIG_SENSORS_W83792D=y
CONFIG_SENSORS_W83793=y
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83L786NG is not set
CONFIG_SENSORS_W83627HF=y
CONFIG_SENSORS_W83627EHF=y
# CONFIG_SENSORS_HDAPS is not set
# CONFIG_SENSORS_APPLESMC is not set
CONFIG_HWMON_DEBUG_CHIP=y
# CONFIG_THERMAL is not set
CONFIG_THERMAL_HWMON=y
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_NOWAYOUT=y
#
# Watchdog Device Drivers
#
CONFIG_SOFT_WATCHDOG=y
CONFIG_ACQUIRE_WDT=y
CONFIG_ADVANTECH_WDT=y
CONFIG_ALIM1535_WDT=y
CONFIG_ALIM7101_WDT=y
CONFIG_SC520_WDT=y
# CONFIG_EUROTECH_WDT is not set
CONFIG_IB700_WDT=y
CONFIG_IBMASR=y
# CONFIG_WAFER_WDT is not set
CONFIG_I6300ESB_WDT=y
# CONFIG_ITCO_WDT is not set
CONFIG_IT8712F_WDT=y
CONFIG_HP_WATCHDOG=y
CONFIG_SC1200_WDT=y
CONFIG_SCx200_WDT=y
CONFIG_PC87413_WDT=y
CONFIG_RDC321X_WDT=y
# CONFIG_60XX_WDT is not set
# CONFIG_SBC8360_WDT is not set
CONFIG_SBC7240_WDT=y
# CONFIG_CPU5_WDT is not set
CONFIG_SMSC37B787_WDT=y
# CONFIG_W83627HF_WDT is not set
CONFIG_W83697HF_WDT=y
CONFIG_W83877F_WDT=y
CONFIG_W83977F_WDT=y
CONFIG_MACHZ_WDT=y
# CONFIG_SBC_EPX_C3_WATCHDOG is not set
#
# ISA-based Watchdog Cards
#
CONFIG_PCWATCHDOG=y
# CONFIG_MIXCOMWD is not set
# CONFIG_WDT is not set
#
# PCI-based Watchdog Cards
#
# CONFIG_PCIPCWATCHDOG is not set
CONFIG_WDTPCI=y
# CONFIG_WDT_501_PCI is not set
#
# USB-based Watchdog Cards
#
# CONFIG_USBPCWATCHDOG is not set
#
# Sonics Silicon Backplane
#
CONFIG_SSB_POSSIBLE=y
# CONFIG_SSB is not set
#
# Multifunction device drivers
#
# CONFIG_MFD_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_HTC_PASIC3 is not set
# CONFIG_MFD_TMIO is not set
#
# Multimedia devices
#
#
# Multimedia core support
#
CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L2_COMMON=y
CONFIG_VIDEO_ALLOW_V4L1=y
CONFIG_VIDEO_V4L1_COMPAT=y
# CONFIG_DVB_CORE is not set
CONFIG_VIDEO_MEDIA=y
#
# Multimedia drivers
#
CONFIG_VIDEO_SAA7146=y
CONFIG_VIDEO_SAA7146_VV=y
CONFIG_MEDIA_TUNER=y
CONFIG_MEDIA_TUNER_CUSTOMIZE=y
# CONFIG_MEDIA_TUNER_SIMPLE is not set
# CONFIG_MEDIA_TUNER_TDA8290 is not set
# CONFIG_MEDIA_TUNER_TDA827X is not set
# CONFIG_MEDIA_TUNER_TDA18271 is not set
CONFIG_MEDIA_TUNER_TDA9887=y
CONFIG_MEDIA_TUNER_TEA5761=y
# CONFIG_MEDIA_TUNER_TEA5767 is not set
# CONFIG_MEDIA_TUNER_MT20XX is not set
# CONFIG_MEDIA_TUNER_MT2060 is not set
CONFIG_MEDIA_TUNER_MT2266=y
CONFIG_MEDIA_TUNER_MT2131=y
CONFIG_MEDIA_TUNER_QT1010=y
CONFIG_MEDIA_TUNER_XC2028=y
CONFIG_MEDIA_TUNER_XC5000=y
CONFIG_MEDIA_TUNER_MXL5005S=y
CONFIG_MEDIA_TUNER_MXL5007T=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_V4L1=y
CONFIG_VIDEOBUF_GEN=y
CONFIG_VIDEOBUF_DMA_SG=y
CONFIG_VIDEOBUF_VMALLOC=y
CONFIG_VIDEOBUF_DMA_CONTIG=y
CONFIG_VIDEO_BTCX=y
CONFIG_VIDEO_IR=y
CONFIG_VIDEO_TVEEPROM=y
CONFIG_VIDEO_TUNER=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
CONFIG_VIDEO_ADV_DEBUG=y
# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
CONFIG_VIDEO_IR_I2C=y
#
# Encoders/decoders and other helper chips
#
#
# Audio decoders
#
CONFIG_VIDEO_TVAUDIO=y
CONFIG_VIDEO_TDA7432=y
CONFIG_VIDEO_TDA9840=y
CONFIG_VIDEO_TDA9875=y
# CONFIG_VIDEO_TEA6415C is not set
CONFIG_VIDEO_TEA6420=y
CONFIG_VIDEO_MSP3400=y
CONFIG_VIDEO_CS5345=y
CONFIG_VIDEO_CS53L32A=y
CONFIG_VIDEO_M52790=y
CONFIG_VIDEO_TLV320AIC23B=y
CONFIG_VIDEO_WM8775=y
CONFIG_VIDEO_WM8739=y
CONFIG_VIDEO_VP27SMPX=y
#
# Video decoders
#
CONFIG_VIDEO_BT819=y
CONFIG_VIDEO_BT856=y
CONFIG_VIDEO_BT866=y
CONFIG_VIDEO_KS0127=y
CONFIG_VIDEO_OV7670=y
# CONFIG_VIDEO_TCM825X is not set
CONFIG_VIDEO_SAA7110=y
CONFIG_VIDEO_SAA7111=y
CONFIG_VIDEO_SAA7114=y
CONFIG_VIDEO_SAA711X=y
CONFIG_VIDEO_SAA717X=y
CONFIG_VIDEO_SAA7191=y
CONFIG_VIDEO_TVP5150=y
# CONFIG_VIDEO_VPX3220 is not set
#
# Video and audio decoders
#
CONFIG_VIDEO_CX25840=y
#
# MPEG video encoders
#
CONFIG_VIDEO_CX2341X=y
#
# Video encoders
#
CONFIG_VIDEO_SAA7127=y
CONFIG_VIDEO_SAA7185=y
CONFIG_VIDEO_ADV7170=y
CONFIG_VIDEO_ADV7175=y
#
# Video improvement chips
#
CONFIG_VIDEO_UPD64031A=y
CONFIG_VIDEO_UPD64083=y
# CONFIG_VIDEO_VIVI is not set
CONFIG_VIDEO_BT848=y
CONFIG_VIDEO_SAA6588=y
# CONFIG_VIDEO_PMS is not set
CONFIG_VIDEO_BWQCAM=y
CONFIG_VIDEO_CQCAM=y
# CONFIG_VIDEO_W9966 is not set
CONFIG_VIDEO_CPIA=y
CONFIG_VIDEO_CPIA_PP=y
CONFIG_VIDEO_CPIA_USB=y
CONFIG_VIDEO_CPIA2=y
# CONFIG_VIDEO_SAA5246A is not set
# CONFIG_VIDEO_SAA5249 is not set
CONFIG_TUNER_3036=y
CONFIG_VIDEO_STRADIS=y
CONFIG_VIDEO_ZORAN=y
# CONFIG_VIDEO_ZORAN_DC30 is not set
CONFIG_VIDEO_ZORAN_ZR36060=y
# CONFIG_VIDEO_ZORAN_BUZ is not set
# CONFIG_VIDEO_ZORAN_DC10 is not set
# CONFIG_VIDEO_ZORAN_LML33 is not set
# CONFIG_VIDEO_ZORAN_LML33R10 is not set
CONFIG_VIDEO_ZORAN_AVS6EYES=y
CONFIG_VIDEO_SAA7134=y
CONFIG_VIDEO_MXB=y
# CONFIG_VIDEO_DPC is not set
CONFIG_VIDEO_HEXIUM_ORION=y
CONFIG_VIDEO_HEXIUM_GEMINI=y
CONFIG_VIDEO_CX88=y
CONFIG_VIDEO_CX88_BLACKBIRD=y
CONFIG_VIDEO_IVTV=y
CONFIG_VIDEO_FB_IVTV=y
CONFIG_VIDEO_CAFE_CCIC=y
CONFIG_V4L_USB_DRIVERS=y
CONFIG_USB_VIDEO_CLASS=y
# CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV is not set
# CONFIG_USB_GSPCA is not set
CONFIG_VIDEO_PVRUSB2=y
CONFIG_VIDEO_PVRUSB2_SYSFS=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
CONFIG_VIDEO_EM28XX=y
# CONFIG_VIDEO_USBVISION is not set
CONFIG_VIDEO_USBVIDEO=y
CONFIG_USB_VICAM=y
CONFIG_USB_IBMCAM=y
# CONFIG_USB_KONICAWC is not set
CONFIG_USB_QUICKCAM_MESSENGER=y
CONFIG_USB_ET61X251=y
CONFIG_VIDEO_OVCAMCHIP=y
CONFIG_USB_W9968CF=y
CONFIG_USB_OV511=y
CONFIG_USB_SE401=y
CONFIG_USB_SN9C102=y
CONFIG_USB_STV680=y
# CONFIG_USB_ZC0301 is not set
CONFIG_USB_PWC=y
CONFIG_USB_PWC_DEBUG=y
CONFIG_USB_ZR364XX=y
CONFIG_USB_STKWEBCAM=y
CONFIG_USB_S2255=y
CONFIG_SOC_CAMERA=y
CONFIG_SOC_CAMERA_MT9M001=y
CONFIG_SOC_CAMERA_MT9V022=y
# CONFIG_SOC_CAMERA_PLATFORM is not set
CONFIG_VIDEO_SH_MOBILE_CEU=y
# CONFIG_RADIO_ADAPTERS is not set
CONFIG_DAB=y
# CONFIG_USB_DABUSB is not set
#
# Graphics support
#
CONFIG_AGP=y
CONFIG_AGP_ALI=y
CONFIG_AGP_ATI=y
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=y
CONFIG_AGP_NVIDIA=y
CONFIG_AGP_SIS=y
CONFIG_AGP_SWORKS=y
# CONFIG_AGP_VIA is not set
CONFIG_AGP_EFFICEON=y
CONFIG_DRM=y
CONFIG_DRM_TDFX=y
CONFIG_DRM_R128=y
# CONFIG_DRM_RADEON is not set
# CONFIG_DRM_I810 is not set
# CONFIG_DRM_I830 is not set
# CONFIG_DRM_I915 is not set
CONFIG_DRM_MGA=y
CONFIG_DRM_SIS=y
CONFIG_DRM_VIA=y
# CONFIG_DRM_SAVAGE is not set
CONFIG_VGASTATE=y
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
# CONFIG_FIRMWARE_EDID is not set
CONFIG_FB_DDC=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
CONFIG_FB_SYS_IMAGEBLIT=y
# CONFIG_FB_FOREIGN_ENDIAN is not set
CONFIG_FB_SYS_FOPS=y
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_HECUBA=y
CONFIG_FB_SVGALIB=y
# CONFIG_FB_MACMODES is not set
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
#
# Frame buffer hardware drivers
#
# CONFIG_FB_CIRRUS is not set
CONFIG_FB_PM2=y
CONFIG_FB_PM2_FIFO_DISCONNECT=y
# CONFIG_FB_CYBER2000 is not set
CONFIG_FB_ARC=y
# CONFIG_FB_ASILIANT is not set
CONFIG_FB_IMSTT=y
# CONFIG_FB_VGA16 is not set
CONFIG_FB_UVESA=y
# CONFIG_FB_VESA is not set
CONFIG_FB_EFI=y
CONFIG_FB_N411=y
# CONFIG_FB_HGA is not set
CONFIG_FB_S1D13XXX=y
CONFIG_FB_NVIDIA=y
CONFIG_FB_NVIDIA_I2C=y
CONFIG_FB_NVIDIA_DEBUG=y
# CONFIG_FB_NVIDIA_BACKLIGHT is not set
CONFIG_FB_RIVA=y
# CONFIG_FB_RIVA_I2C is not set
CONFIG_FB_RIVA_DEBUG=y
# CONFIG_FB_RIVA_BACKLIGHT is not set
# CONFIG_FB_I810 is not set
CONFIG_FB_LE80578=y
CONFIG_FB_CARILLO_RANCH=y
CONFIG_FB_INTEL=y
# CONFIG_FB_INTEL_DEBUG is not set
CONFIG_FB_INTEL_I2C=y
CONFIG_FB_MATROX=y
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G=y
# CONFIG_FB_MATROX_I2C is not set
CONFIG_FB_MATROX_MULTIHEAD=y
# CONFIG_FB_RADEON is not set
CONFIG_FB_ATY128=y
CONFIG_FB_ATY128_BACKLIGHT=y
CONFIG_FB_ATY=y
# CONFIG_FB_ATY_CT is not set
CONFIG_FB_ATY_GX=y
CONFIG_FB_ATY_BACKLIGHT=y
CONFIG_FB_S3=y
CONFIG_FB_SAVAGE=y
# CONFIG_FB_SAVAGE_I2C is not set
CONFIG_FB_SAVAGE_ACCEL=y
CONFIG_FB_SIS=y
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
CONFIG_FB_NEOMAGIC=y
CONFIG_FB_KYRO=y
# CONFIG_FB_3DFX is not set
CONFIG_FB_VOODOO1=y
CONFIG_FB_VT8623=y
# CONFIG_FB_CYBLA is not set
CONFIG_FB_TRIDENT=y
CONFIG_FB_TRIDENT_ACCEL=y
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
CONFIG_FB_CARMINE=y
CONFIG_FB_CARMINE_DRAM_EVAL=y
# CONFIG_CARMINE_DRAM_CUSTOM is not set
CONFIG_FB_GEODE=y
CONFIG_FB_GEODE_LX=y
CONFIG_FB_GEODE_GX=y
CONFIG_FB_GEODE_GX1=y
# CONFIG_FB_VIRTUAL is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_LTV350QV=y
CONFIG_LCD_ILI9320=y
CONFIG_LCD_VGG2432A4=y
CONFIG_LCD_PLATFORM=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CORGI=y
CONFIG_BACKLIGHT_PROGEAR=y
CONFIG_BACKLIGHT_CARILLO_RANCH=y
CONFIG_BACKLIGHT_MBP_NVIDIA=y
#
# Display device support
#
CONFIG_DISPLAY_SUPPORT=y
#
# Display hardware drivers
#
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
# CONFIG_VIDEO_SELECT is not set
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE is not set
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
CONFIG_SOUND=y
# CONFIG_SND is not set
# CONFIG_SOUND_PRIME is not set
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
CONFIG_HIDRAW=y
#
# USB Input Devices
#
# CONFIG_USB_HID is not set
#
# USB HID Boot Protocol drivers
#
CONFIG_USB_KBD=y
CONFIG_USB_MOUSE=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_DEVICE_CLASS is not set
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
CONFIG_USB_MON=y
#
# USB Host Controller Drivers
#
CONFIG_USB_C67X00_HCD=y
CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_EHCI_TT_NEWSCHED is not set
CONFIG_USB_ISP116X_HCD=y
CONFIG_USB_ISP1760_HCD=y
CONFIG_USB_ISP1760_PCI=y
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=y
# CONFIG_USB_SL811_HCD is not set
CONFIG_USB_R8A66597_HCD=y
#
# USB Device Class drivers
#
CONFIG_USB_ACM=y
CONFIG_USB_PRINTER=y
CONFIG_USB_WDM=y
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#
#
# may also be needed; see USB_STORAGE Help for more information
#
# CONFIG_USB_STORAGE is not set
CONFIG_USB_LIBUSUAL=y
#
# USB Imaging devices
#
CONFIG_USB_MDC800=y
CONFIG_USB_MICROTEK=y
#
# USB port drivers
#
CONFIG_USB_USS720=y
CONFIG_USB_SERIAL=y
# CONFIG_USB_SERIAL_CONSOLE is not set
CONFIG_USB_EZUSB=y
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_AIRCABLE=y
CONFIG_USB_SERIAL_ARK3116=y
CONFIG_USB_SERIAL_BELKIN=y
CONFIG_USB_SERIAL_CH341=y
CONFIG_USB_SERIAL_WHITEHEAT=y
# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
CONFIG_USB_SERIAL_CP2101=y
CONFIG_USB_SERIAL_CYPRESS_M8=y
CONFIG_USB_SERIAL_EMPEG=y
# CONFIG_USB_SERIAL_FTDI_SIO is not set
# CONFIG_USB_SERIAL_FUNSOFT is not set
# CONFIG_USB_SERIAL_VISOR is not set
CONFIG_USB_SERIAL_IPAQ=y
CONFIG_USB_SERIAL_IR=y
# CONFIG_USB_SERIAL_EDGEPORT is not set
CONFIG_USB_SERIAL_EDGEPORT_TI=y
CONFIG_USB_SERIAL_GARMIN=y
CONFIG_USB_SERIAL_IPW=y
# CONFIG_USB_SERIAL_IUU is not set
CONFIG_USB_SERIAL_KEYSPAN_PDA=y
CONFIG_USB_SERIAL_KEYSPAN=y
# CONFIG_USB_SERIAL_KLSI is not set
# CONFIG_USB_SERIAL_KOBIL_SCT is not set
CONFIG_USB_SERIAL_MCT_U232=y
CONFIG_USB_SERIAL_MOS7720=y
# CONFIG_USB_SERIAL_MOS7840 is not set
# CONFIG_USB_SERIAL_MOTOROLA is not set
CONFIG_USB_SERIAL_NAVMAN=y
# CONFIG_USB_SERIAL_PL2303 is not set
CONFIG_USB_SERIAL_OTI6858=y
CONFIG_USB_SERIAL_SPCP8X5=y
# CONFIG_USB_SERIAL_HP4X is not set
# CONFIG_USB_SERIAL_SAFE is not set
# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
CONFIG_USB_SERIAL_TI=y
CONFIG_USB_SERIAL_CYBERJACK=y
CONFIG_USB_SERIAL_XIRCOM=y
# CONFIG_USB_SERIAL_OPTION is not set
CONFIG_USB_SERIAL_OMNINET=y
# CONFIG_USB_SERIAL_DEBUG is not set
#
# USB Miscellaneous drivers
#
CONFIG_USB_EMI62=y
CONFIG_USB_EMI26=y
CONFIG_USB_ADUTUX=y
# CONFIG_USB_RIO500 is not set
CONFIG_USB_LEGOTOWER=y
CONFIG_USB_LCD=y
CONFIG_USB_BERRY_CHARGE=y
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
CONFIG_USB_CYTHERM=y
CONFIG_USB_PHIDGET=y
CONFIG_USB_PHIDGETKIT=y
CONFIG_USB_PHIDGETMOTORCONTROL=y
CONFIG_USB_PHIDGETSERVO=y
CONFIG_USB_IDMOUSE=y
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
CONFIG_USB_SISUSBVGA=y
# CONFIG_USB_SISUSBVGA_CON is not set
# CONFIG_USB_LD is not set
CONFIG_USB_TRANCEVIBRATOR=y
CONFIG_USB_IOWARRIOR=y
# CONFIG_USB_TEST is not set
# CONFIG_USB_ISIGHTFW is not set
# CONFIG_USB_GADGET is not set
CONFIG_MMC=y
CONFIG_MMC_DEBUG=y
CONFIG_MMC_UNSAFE_RESUME=y
#
# MMC/SD Card Drivers
#
# CONFIG_MMC_BLOCK is not set
CONFIG_SDIO_UART=y
# CONFIG_MMC_TEST is not set
#
# MMC/SD Host Controller Drivers
#
# CONFIG_MMC_SDHCI is not set
CONFIG_MMC_WBSD=y
CONFIG_MMC_TIFM_SD=y
CONFIG_MEMSTICK=y
CONFIG_MEMSTICK_DEBUG=y
#
# MemoryStick drivers
#
CONFIG_MEMSTICK_UNSAFE_RESUME=y
CONFIG_MSPRO_BLOCK=y
#
# MemoryStick Host Controller Drivers
#
# CONFIG_MEMSTICK_TIFM_MS is not set
# CONFIG_MEMSTICK_JMICRON_38X is not set
CONFIG_NEW_LEDS=y
# CONFIG_LEDS_CLASS is not set
#
# LED drivers
#
#
# LED Triggers
#
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
# CONFIG_ACCESSIBILITY is not set
# CONFIG_INFINIBAND is not set
# CONFIG_EDAC is not set
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
CONFIG_RTC_DEBUG=y
#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
# CONFIG_RTC_INTF_PROC is not set
CONFIG_RTC_INTF_DEV=y
CONFIG_RTC_INTF_DEV_UIE_EMUL=y
CONFIG_RTC_DRV_TEST=y
#
# I2C RTC drivers
#
CONFIG_RTC_DRV_DS1307=y
CONFIG_RTC_DRV_DS1374=y
# CONFIG_RTC_DRV_DS1672 is not set
CONFIG_RTC_DRV_MAX6900=y
CONFIG_RTC_DRV_RS5C372=y
# CONFIG_RTC_DRV_ISL1208 is not set
CONFIG_RTC_DRV_X1205=y
CONFIG_RTC_DRV_PCF8563=y
CONFIG_RTC_DRV_PCF8583=y
# CONFIG_RTC_DRV_M41T80 is not set
# CONFIG_RTC_DRV_S35390A is not set
CONFIG_RTC_DRV_FM3130=y
#
# SPI RTC drivers
#
# CONFIG_RTC_DRV_M41T94 is not set
CONFIG_RTC_DRV_DS1305=y
CONFIG_RTC_DRV_MAX6902=y
CONFIG_RTC_DRV_R9701=y
# CONFIG_RTC_DRV_RS5C348 is not set
#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
# CONFIG_RTC_DRV_DS1511 is not set
CONFIG_RTC_DRV_DS1553=y
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_STK17TA8 is not set
CONFIG_RTC_DRV_M48T86=y
# CONFIG_RTC_DRV_M48T59 is not set
CONFIG_RTC_DRV_V3020=y
#
# on-CPU RTC drivers
#
CONFIG_DMADEVICES=y
#
# DMA Devices
#
CONFIG_INTEL_IOATDMA=y
CONFIG_DMA_ENGINE=y
#
# DMA Clients
#
# CONFIG_NET_DMA is not set
CONFIG_DMATEST=y
CONFIG_DCA=y
CONFIG_AUXDISPLAY=y
CONFIG_UIO=y
CONFIG_UIO_CIF=y
# CONFIG_UIO_PDRV is not set
# CONFIG_UIO_PDRV_GENIRQ is not set
# CONFIG_UIO_SMX is not set
#
# Firmware Drivers
#
CONFIG_EDD=y
CONFIG_EDD_OFF=y
CONFIG_FIRMWARE_MEMMAP=y
CONFIG_DELL_RBU=y
CONFIG_DCDBAS=y
# CONFIG_DMIID is not set
# CONFIG_ISCSI_IBFT_FIND is not set
#
# File systems
#
# CONFIG_EXT2_FS is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not set
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=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=y
# CONFIG_JFS_POSIX_ACL is not set
# CONFIG_JFS_SECURITY is not set
CONFIG_JFS_DEBUG=y
CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_OCFS2_FS is not set
CONFIG_DNOTIFY=y
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
CONFIG_FUSE_FS=y
CONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
# CONFIG_JOLIET is not set
CONFIG_ZISOFS=y
CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
CONFIG_NTFS_FS=y
CONFIG_NTFS_DEBUG=y
CONFIG_NTFS_RW=y
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
# CONFIG_PROC_KCORE is not set
CONFIG_PROC_VMCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_CONFIGFS_FS=y
#
# Miscellaneous filesystems
#
CONFIG_ADFS_FS=y
# CONFIG_ADFS_FS_RW is not set
CONFIG_AFFS_FS=y
# CONFIG_ECRYPT_FS is not set
CONFIG_HFS_FS=y
CONFIG_HFSPLUS_FS=y
CONFIG_BEFS_FS=y
CONFIG_BEFS_DEBUG=y
CONFIG_BFS_FS=y
CONFIG_EFS_FS=y
CONFIG_CRAMFS=y
CONFIG_VXFS_FS=y
CONFIG_MINIX_FS=y
CONFIG_OMFS_FS=y
CONFIG_HPFS_FS=y
CONFIG_QNX4FS_FS=y
CONFIG_ROMFS_FS=y
CONFIG_SYSV_FS=y
CONFIG_UFS_FS=y
CONFIG_UFS_FS_WRITE=y
CONFIG_UFS_DEBUG=y
# CONFIG_NETWORK_FILESYSTEMS is not set
#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
CONFIG_ACORN_PARTITION=y
CONFIG_ACORN_PARTITION_CUMANA=y
CONFIG_ACORN_PARTITION_EESOX=y
CONFIG_ACORN_PARTITION_ICS=y
CONFIG_ACORN_PARTITION_ADFS=y
# CONFIG_ACORN_PARTITION_POWERTEC is not set
# CONFIG_ACORN_PARTITION_RISCIX is not set
# CONFIG_OSF_PARTITION is not set
CONFIG_AMIGA_PARTITION=y
# CONFIG_ATARI_PARTITION is not set
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
# CONFIG_MINIX_SUBPARTITION is not set
CONFIG_SOLARIS_X86_PARTITION=y
# CONFIG_UNIXWARE_DISKLABEL is not set
# CONFIG_LDM_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
CONFIG_SUN_PARTITION=y
CONFIG_KARMA_PARTITION=y
CONFIG_EFI_PARTITION=y
# CONFIG_SYSV68_PARTITION is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
# CONFIG_NLS_CODEPAGE_437 is not set
CONFIG_NLS_CODEPAGE_737=y
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_CODEPAGE_852=y
CONFIG_NLS_CODEPAGE_855=y
CONFIG_NLS_CODEPAGE_857=y
CONFIG_NLS_CODEPAGE_860=y
# CONFIG_NLS_CODEPAGE_861 is not set
CONFIG_NLS_CODEPAGE_862=y
# CONFIG_NLS_CODEPAGE_863 is not set
CONFIG_NLS_CODEPAGE_864=y
CONFIG_NLS_CODEPAGE_865=y
CONFIG_NLS_CODEPAGE_866=y
CONFIG_NLS_CODEPAGE_869=y
CONFIG_NLS_CODEPAGE_936=y
# CONFIG_NLS_CODEPAGE_950 is not set
CONFIG_NLS_CODEPAGE_932=y
CONFIG_NLS_CODEPAGE_949=y
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
CONFIG_NLS_CODEPAGE_1250=y
CONFIG_NLS_CODEPAGE_1251=y
CONFIG_NLS_ASCII=y
# CONFIG_NLS_ISO8859_1 is not set
CONFIG_NLS_ISO8859_2=y
CONFIG_NLS_ISO8859_3=y
CONFIG_NLS_ISO8859_4=y
CONFIG_NLS_ISO8859_5=y
CONFIG_NLS_ISO8859_6=y
# CONFIG_NLS_ISO8859_7 is not set
CONFIG_NLS_ISO8859_9=y
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
CONFIG_NLS_ISO8859_15=y
CONFIG_NLS_KOI8_R=y
CONFIG_NLS_KOI8_U=y
CONFIG_NLS_UTF8=y
CONFIG_DLM=y
CONFIG_DLM_DEBUG=y
#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_PRINTK_TIME=y
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=1024
CONFIG_MAGIC_SYSRQ=y
CONFIG_UNUSED_SYMBOLS=y
CONFIG_DEBUG_FS=y
CONFIG_HEADERS_CHECK=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_SHIRQ=y
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_SCHED_DEBUG=y
CONFIG_SCHEDSTATS=y
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_OBJECTS is not set
CONFIG_SLUB_DEBUG_ON=y
# CONFIG_SLUB_STATS is not set
CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_PI_LIST=y
CONFIG_RT_MUTEX_TESTER=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_PROVE_LOCKING=y
CONFIG_LOCKDEP=y
# CONFIG_LOCK_STAT is not set
CONFIG_DEBUG_LOCKDEP=y
CONFIG_TRACE_IRQFLAGS=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
CONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_INFO is not set
CONFIG_DEBUG_VM=y
# CONFIG_DEBUG_WRITECOUNT is not set
CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set
CONFIG_DEBUG_SG=y
CONFIG_FRAME_POINTER=y
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_RCU_TORTURE_TEST=y
CONFIG_RCU_TORTURE_TEST_RUNNABLE=y
# CONFIG_BACKTRACE_SELF_TEST is not set
CONFIG_DEBUG_BLOCK_EXT_DEVT=y
CONFIG_FAULT_INJECTION=y
# CONFIG_FAILSLAB is not set
CONFIG_FAIL_PAGE_ALLOC=y
CONFIG_FAIL_MAKE_REQUEST=y
CONFIG_FAIL_IO_TIMEOUT=y
CONFIG_FAULT_INJECTION_DEBUG_FS=y
CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
CONFIG_LATENCYTOP=y
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
CONFIG_HAVE_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_TRACER_MAX_TRACE=y
CONFIG_TRACING=y
CONFIG_FTRACE=y
CONFIG_IRQSOFF_TRACER=y
CONFIG_SYSPROF_TRACER=y
CONFIG_SCHED_TRACER=y
CONFIG_CONTEXT_SWITCH_TRACER=y
# CONFIG_DYNAMIC_FTRACE is not set
# CONFIG_FTRACE_STARTUP_TEST is not set
CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
# CONFIG_BUILD_DOCSRC is not set
CONFIG_SAMPLES=y
CONFIG_SAMPLE_KOBJECT=y
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS is not set
CONFIG_STRICT_DEVMEM=y
CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
CONFIG_DEBUG_STACK_USAGE=y
CONFIG_DEBUG_PAGEALLOC=y
CONFIG_DEBUG_PER_CPU_MAPS=y
CONFIG_X86_PTDUMP=y
# CONFIG_DEBUG_RODATA is not set
CONFIG_4KSTACKS=y
CONFIG_DOUBLEFAULT=y
CONFIG_MMIOTRACE_HOOKS=y
CONFIG_MMIOTRACE=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_0X80=y
# CONFIG_IO_DELAY_0XED is not set
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=0
CONFIG_DEBUG_BOOT_PARAMS=y
CONFIG_CPA_DEBUG=y
CONFIG_OPTIMIZE_INLINING=y
#
# Security options
#
CONFIG_KEYS=y
CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
# CONFIG_SECURITY_ROOTPLUG is not set
CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR=0
CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
# CONFIG_SECURITY_SELINUX_DISABLE is not set
# CONFIG_SECURITY_SELINUX_DEVELOP is not set
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT is not set
# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
# CONFIG_SECURITY_SMACK is not set
CONFIG_CRYPTO=y
#
# Crypto core or helper
#
CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_NULL=y
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_AUTHENC=y
#
# Authenticated Encryption with Associated Data
#
CONFIG_CRYPTO_CCM=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_SEQIV=y
#
# Block modes
#
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
CONFIG_CRYPTO_ECB=y
# CONFIG_CRYPTO_LRW is not set
CONFIG_CRYPTO_PCBC=y
CONFIG_CRYPTO_XTS=y
#
# Hash modes
#
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y
#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=y
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
# CONFIG_CRYPTO_RMD128 is not set
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_RMD256=y
CONFIG_CRYPTO_RMD320=y
CONFIG_CRYPTO_SHA1=y
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
CONFIG_CRYPTO_TGR192=y
# CONFIG_CRYPTO_WP512 is not set
#
# Ciphers
#
CONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_AES_586 is not set
CONFIG_CRYPTO_ANUBIS=y
CONFIG_CRYPTO_ARC4=y
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_CAMELLIA is not set
CONFIG_CRYPTO_CAST5=y
# CONFIG_CRYPTO_CAST6 is not set
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=y
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_SALSA20=y
CONFIG_CRYPTO_SALSA20_586=y
CONFIG_CRYPTO_SEED=y
CONFIG_CRYPTO_SERPENT=y
CONFIG_CRYPTO_TEA=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_586=y
#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
# CONFIG_CRYPTO_LZO is not set
#
# Random Number Generation
#
# CONFIG_CRYPTO_ANSI_CPRNG is not set
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=y
CONFIG_CRYPTO_DEV_PADLOCK_AES=y
# CONFIG_CRYPTO_DEV_PADLOCK_SHA is not set
# CONFIG_CRYPTO_DEV_GEODE is not set
CONFIG_CRYPTO_DEV_HIFN_795X=y
# CONFIG_CRYPTO_DEV_HIFN_795X_RNG is not set
CONFIG_HAVE_KVM=y
CONFIG_VIRTUALIZATION=y
# CONFIG_KVM is not set
CONFIG_LGUEST=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_RING=y
# CONFIG_VIRTIO_PCI is not set
CONFIG_VIRTIO_BALLOON=y
#
# Library routines
#
CONFIG_BITREVERSE=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_CRC_CCITT=y
# CONFIG_CRC16 is not set
CONFIG_CRC_T10DIF=y
CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
CONFIG_CRC7=y
CONFIG_LIBCRC32C=y
CONFIG_AUDIT_GENERIC=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-10 20:30 [bug] latest -git boot hang Ingo Molnar
@ 2008-10-10 20:40 ` Ingo Molnar
2008-10-10 20:56 ` Ingo Molnar
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-10 20:40 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-kernel, Andrew Morton, Jens Axboe, Thomas Gleixner,
H. Peter Anvin, Yinghai Lu
* Ingo Molnar <mingo@elte.hu> wrote:
> with latest -git (f6bccf6), -tip testing on one of my test-boxes found
> a boot hang.
>
> It just hangs during fsck, "Checking filesystems", so i suspect the
> block IO changes.
bisection ongoing. Current bisection window:
nr of bisection commits: 128
----------------------------
ad3316b: block: Find bio sector offset given idx and offset
b02739b: block: gendisk integrity wrapper
ad7fce9: block: Switch blk_integrity_compare from bdev to gendisk
0c032ab: block: Fix double put in blk_integrity_unregister
74aa8c2: block: Introduce integrity data ownership flag
b04accc: block: revert part of d7533ad0e132f92e75c1b2eb7c26387b25a583c1
8deaf72: bio.h: Remove unused conditional code
d00e29f: block: remove end_{queued|dequeued}_request()
99cd338: block: change elevator to use __blk_end_request()
7afb3a6: gdrom: change to use __blk_end_request()
2a9df50: memstick: change to use __blk_end_request()
8316982: virtio_blk: change to use __blk_end_request()
0497b34: blktrace: use BLKTRACE_BDEV_SIZE as the name size for setup structure
ef9e3fa: block: add lld busy state exporting interface
336c3d8: block: Fix blk_start_queueing() to not kick a stopped queue
c0ddffa: include blktrace_api.h in headers_install
e3ba9ae: block: reserve some tags just for sync IO
f7d7b7a: block: as/cfq ssd idle check update
8bff7c6: libata: set queue SSD flag for SSD devices
a68bbdd: block: add queue flag for SSD/non-rotational devices
9e49184: floppy: support arbitrary first-sector numbers
061837b: drivers/block: Use DIV_ROUND_UP
905bd78: cciss: Fix cciss SCSI rescan code to better notice device changes
79eb014: fix an example of scatterlists handling in DMA-API.txt
4ee5eaf: block: add a queue flag for request stacking support
82124d6: block: add request submission interface
32fab44: block: add request update interface
e3335de: block: blk_cleanup_queue() should call blk_sync_queue()
9246b5f: block: Expand Xen blkfront for > 16 xvd
9c02f2b: block: cleanup some of the integrity stuff in blkdev.h
7ba1fba: block: use rq complete marking in blk_abort_request()
581d4e2: block: add fault injection mechanism for faking request timeouts
0a0d96b: block: add bio_kmalloc()
3e6053d: block: adjust blkdev_issue_discard for swap
4677735: sg: remove unnecessary blk_rq_unmap_user
0b6cb26: sg: remove sg_read_xfer
c3919af: sg: remove sg_write_xfer
626710c: sg: incorporate sg_build_direct into sg_start_req
44c7b0e: sg: remove __sg_start_req
fd1c1de: sg: remove b_malloc_len in sg_scatter_hold struct
7e56cb0: sg: remove SG_ALLOW_DIO_CODE define
a91a3a2: sg: rename sg_cmd_done sg_rq_end_io
224cb3e: dm: Call blk_abort_queue on failed paths
11914a5: block: Add interface to abort queued requests
242f9dc: block: unify request timeout handling
608aeef: Call flush_disk() after detecting an online resize.
56ade44: Added flush_disk to factor out common buffer cache flushing code.
f98a8ca: SCSI sd driver calls revalidate_disk wrapper.
9bc3ffb: Check for device resize when rescanning partitions
c3279d1: Adjust block device size after an online resize of a disk.
0c002c2: Wrapper for lower-level revalidate_disk routines.
243294d: block: fix duplicate headers for /proc/partitions
fad7f01: sg: set dxferp to NULL for READ with the older SG interface
8188276: block: make blk_rq_map_user take a NULL user-space buffer
839e96a: block: update comment on end_request()
55dc7db: init: DEBUG_BLOCK_EXT_DEVT requires explicit root= param
2bbedcb: block: don't test for partition size in bdget_disk() and blk_lookup_devt()
759f8ca: Change default value of CONFIG_DEBUG_BLOCK_EXT_DEVT to 'n'
aeb3d3a: block: kmalloc args reversed, small function definition fixes
01cfcdd: sg: use blk_rq_aligned helper function
8790407: block: add blk_rq_aligned helper function
4d8ab62: bio: convert bio_copy_kern to use bio_copy_user
10db10d: sg: convert the indirect IO path to use the block layer
6e5a30c: sg: convert the direct IO path to use the block layer
10865df: sg: convert the non-data path to use the block layer
152e283: block: introduce struct rq_map_data to use reserved pages
a3bce90: block: add gfp_mask argument to blk_rq_map_user and blk_rq_map_user_iov
45333d5: cfq-iosched: fix queue depth detection
6054016: block: don't use bio_has_data() in the completion path
ab780f1: block: inherit CPU completion on bio->rq and rq->rq merges
c7c22e4: block: add support for IO CPU affinity
18887ad: block: make kblockd_schedule_work() take the queue as parameter
b646fc5: block: split softirq handling into blk-softirq.c
0835da6: block: use linux/uaccess.h in elevator.c instead of asm variant
3e1a7ff: block: allow disk to have extended device number
689d6fa: block: replace @ext_minors with GENHD_FL_EXT_DEVT
540eed5: block: make partition array dynamic
074a7ac: block: move stats from disk to part0
eddb2e2: block: kill GENHD_FL_FAIL and use part0->make_it_fail
0762b8b: block: always set bdev->bd_part
4c46501: block: move holder_dir from disk to part0
b7db995: block: move policy from disk to part0
e561052: block: unify sysfs size node handling
548b10e: block: move __dev from disk to part0
80795ae: block: move capacity from disk to part0
b5d0b9d: block: introduce partition 0
ed9e198: block: implement and use {disk|part}_to_dev()
870d665: block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
f615b48: sd/ide-disk: apply extended minors to sd and ide
1f01429: block: adjust formatting for large minors and add ext_range sysfs attr
bcce3de: block: implement extended dev numbers
c995905: block: fix diskstats access
e71bf0d: block: fix disk->part[] dereferencing race
f331c02: block: don't depend on consecutive minor space
cf771cb: block: make variable and argument names more consistent
310a2c1: block: misc updates
88e3412: block: update add_partition() error handling
ec2cded: block: allow deleting zero length partition
def4e38: block: use class_dev_iterator instead of class_for_each_device()
2ac3cee: block: don't grab block_class_lock unnecessarily
ac65ece: block: fix partition info printouts
5a3ceb8: driver-core: use klist for class device list and implement iterator
a1ed5b0: klist: don't iterate over deleted entries
710027a: Add some block/ source files to the kernel-api docbook. Fix kernel-doc notation in them as needed. Fix changed function parameter names. Fix typos/spellos. In comments, change REQ_SPECIAL to REQ_TYPE_SPECIAL and REQ_BLOCK_PC to REQ_TYPE_BLOCK_PC.
5b99c2f: block: make bi_phys_segments an unsigned int instead of short
960e739: block: raid fixups for removal of bi_hw_segments
5df97b9: drop vmerge accounting
b8b3e16: block: drop virtual merging accounting
6a421c1: block: update documentation for deadline fifo_batch tunable
4fb72f7: deadline-iosched: non-functional fixes
63de428: deadline-iosched: allow non-sequential batching
766ca44: virtio_blk: use a wrapper function to access io context information of IO requests
1a8e2bd: Kill REQ_TYPE_FLUSH
e17fc0a: Allow elevators to sort/merge discard requests
d30a260: Add BLKDISCARD ioctl to allow userspace to discard sectors
2ebca85: Use WRITE_BARRIER in blkdev_issue_flush(), not (1<<BIO_RW_BARRIER)
35ba8f7: blktrace: simplify flags handling in __blk_add_trace
27b29e8: blktrace: support discard requests
fdc5397: Support 'discard sectors' operation.
eae9acd: Support 'discard sectors' operation in translation layer support core
8c540a9: Let the block device know when sectors can be discarded
fb2dce8: Add 'discard' request handling
d628eae: Fix up comments about matching flags between bio and rq
3614407: highmem: use bio_has_data() in the bounce path
051cc39: block: use bio_has_data() in the IO completion path
a9c701e: block: use bio_has_data() to check for data carrying bio
7a67f63: block: add bio_has_data() to detect whether a bio carries data or not
35e396c: SG_IO block filter whitelist missing MMC SET READ AHEAD command
so definitely block IO related it appears.
Ingo
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-10 20:40 ` Ingo Molnar
@ 2008-10-10 20:56 ` Ingo Molnar
2008-10-10 21:10 ` Linus Torvalds
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-10 20:56 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-kernel, Andrew Morton, Jens Axboe, Thomas Gleixner,
H. Peter Anvin, Yinghai Lu, Tejun Heo
> bisection ongoing. [...]
the result is:
# bad: [f6bccf69] Merge git://git.kernel.org/pub/scm/linux/kernel/gi
# good: [3fa8749e] Linux 2.6.27
# good: [d403a648] Merge phase #1 of git://git.kernel.org/pub/scm/lin
# bad: [ad3316bf] block: Find bio sector offset given idx and offset
# bad: [10865dfa] sg: convert the non-data path to use the block lay
# good: [88e34126] block: update add_partition() error handling
# bad: [4c46501d] block: move holder_dir from disk to part0
# good: [f615b48c] sd/ide-disk: apply extended minors to sd and ide
# bad: [80795aef] block: move capacity from disk to part0
# bad: [ed9e1982] block: implement and use {disk|part}_to_dev()
# bad: [870d6656] block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
| 870d6656126add8e383645732b03df2b7ccd4f94 is first bad commit
| commit 870d6656126add8e383645732b03df2b7ccd4f94
| Author: Tejun Heo <tj@kernel.org>
| Date: Mon Aug 25 19:47:25 2008 +0900
|
| block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
and meanwhile 2 other test-systems failed to boot as well - both have
CONFIG_DEBUG_BLOCK_EXT_DEVT=y.
So i guess this debug feature is working as expected.
I guess we should mark CONFIG_DEBUG_BLOCK_EXT_DEVT=y as really dangerous
to enable because contemporary distributions (i tried Fedora 9) fail
with it too?
Ingo
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-10 20:56 ` Ingo Molnar
@ 2008-10-10 21:10 ` Linus Torvalds
2008-10-11 0:50 ` Tejun Heo
0 siblings, 1 reply; 25+ messages in thread
From: Linus Torvalds @ 2008-10-10 21:10 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Andrew Morton, Jens Axboe, Thomas Gleixner,
H. Peter Anvin, Yinghai Lu, Tejun Heo
On Fri, 10 Oct 2008, Ingo Molnar wrote:
>
> | 870d6656126add8e383645732b03df2b7ccd4f94 is first bad commit
> | commit 870d6656126add8e383645732b03df2b7ccd4f94
> | Author: Tejun Heo <tj@kernel.org>
> | Date: Mon Aug 25 19:47:25 2008 +0900
> |
> | block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
>
> and meanwhile 2 other test-systems failed to boot as well - both have
> CONFIG_DEBUG_BLOCK_EXT_DEVT=y.
>
> So i guess this debug feature is working as expected.
Ahh, yeah, sounds that way.
> I guess we should mark CONFIG_DEBUG_BLOCK_EXT_DEVT=y as really dangerous
> to enable because contemporary distributions (i tried Fedora 9) fail
> with it too?
Tejun - do you know whether _any_ distro will boot with
CONFIG_DEBUG_BLOCK_EXT_DEVT=y?
It does sound like perhaps the option should be hidden more, if it's
really only reasonably enabled for some very specialized distro debuggers,
not normal kernel people.
Linus
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-10 21:10 ` Linus Torvalds
@ 2008-10-11 0:50 ` Tejun Heo
2008-10-11 1:42 ` H. Peter Anvin
` (3 more replies)
0 siblings, 4 replies; 25+ messages in thread
From: Tejun Heo @ 2008-10-11 0:50 UTC (permalink / raw)
To: Linus Torvalds
Cc: Ingo Molnar, linux-kernel, Andrew Morton, Jens Axboe,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
Hello,
Linus Torvalds wrote:
> On Fri, 10 Oct 2008, Ingo Molnar wrote:
>> | 870d6656126add8e383645732b03df2b7ccd4f94 is first bad commit
>> | commit 870d6656126add8e383645732b03df2b7ccd4f94
>> | Author: Tejun Heo <tj@kernel.org>
>> | Date: Mon Aug 25 19:47:25 2008 +0900
>> |
>> | block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
>>
>> and meanwhile 2 other test-systems failed to boot as well - both have
>> CONFIG_DEBUG_BLOCK_EXT_DEVT=y.
>>
>> So i guess this debug feature is working as expected.
>
> Ahh, yeah, sounds that way.
>
>> I guess we should mark CONFIG_DEBUG_BLOCK_EXT_DEVT=y as really dangerous
>> to enable because contemporary distributions (i tried Fedora 9) fail
>> with it too?
>
> Tejun - do you know whether _any_ distro will boot with
> CONFIG_DEBUG_BLOCK_EXT_DEVT=y?
Hmmm... openSUSE 11.0 didn't have any problem with it, which I was a bit
pleasantly surprised about. I haven't tested management tools but the
base system worked just fine.
> It does sound like perhaps the option should be hidden more, if it's
> really only reasonably enabled for some very specialized distro debuggers,
> not normal kernel people.
Yeap, if fedora didn't work, I think it should be hidden. Do we already
have place to hide things like this?
Thanks.
--
tejun
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 0:50 ` Tejun Heo
@ 2008-10-11 1:42 ` H. Peter Anvin
2008-10-13 9:13 ` Tejun Heo
2008-10-11 7:11 ` [bug] latest -git boot hang Jens Axboe
` (2 subsequent siblings)
3 siblings, 1 reply; 25+ messages in thread
From: H. Peter Anvin @ 2008-10-11 1:42 UTC (permalink / raw)
To: Tejun Heo
Cc: Linus Torvalds, Ingo Molnar, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, Yinghai Lu
Tejun Heo wrote:
>
> Yeap, if fedora didn't work, I think it should be hidden. Do we already
> have place to hide things like this?
>
By the way, I don't see anything in this patchset that lets userspace
discover the parent device. Since the old rule of
partition device = parent device + partition number
... no longer holds, this is a serious omission for something that is in
mainstream (and therefore *requires* that a new interface is deployed
for anything that cares.)
This will have to be addressed before 2.6.28 final.
-hpa
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 0:50 ` Tejun Heo
2008-10-11 1:42 ` H. Peter Anvin
@ 2008-10-11 7:11 ` Jens Axboe
2008-10-11 7:19 ` Ingo Molnar
2008-10-13 8:41 ` Takashi Iwai
3 siblings, 0 replies; 25+ messages in thread
From: Jens Axboe @ 2008-10-11 7:11 UTC (permalink / raw)
To: Tejun Heo
Cc: Linus Torvalds, Ingo Molnar, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Sat, Oct 11 2008, Tejun Heo wrote:
> Hello,
>
> Linus Torvalds wrote:
> > On Fri, 10 Oct 2008, Ingo Molnar wrote:
> >> | 870d6656126add8e383645732b03df2b7ccd4f94 is first bad commit
> >> | commit 870d6656126add8e383645732b03df2b7ccd4f94
> >> | Author: Tejun Heo <tj@kernel.org>
> >> | Date: Mon Aug 25 19:47:25 2008 +0900
> >> |
> >> | block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
> >>
> >> and meanwhile 2 other test-systems failed to boot as well - both have
> >> CONFIG_DEBUG_BLOCK_EXT_DEVT=y.
> >>
> >> So i guess this debug feature is working as expected.
> >
> > Ahh, yeah, sounds that way.
> >
> >> I guess we should mark CONFIG_DEBUG_BLOCK_EXT_DEVT=y as really dangerous
> >> to enable because contemporary distributions (i tried Fedora 9) fail
> >> with it too?
> >
> > Tejun - do you know whether _any_ distro will boot with
> > CONFIG_DEBUG_BLOCK_EXT_DEVT=y?
>
> Hmmm... openSUSE 11.0 didn't have any problem with it, which I was a bit
> pleasantly surprised about. I haven't tested management tools but the
> base system worked just fine.
10.3 worked here too, and iirc the ubuntu on my laptop did too. It's
been a month or so since I tested though, so...
> > It does sound like perhaps the option should be hidden more, if it's
> > really only reasonably enabled for some very specialized distro debuggers,
> > not normal kernel people.
>
> Yeap, if fedora didn't work, I think it should be hidden. Do we already
> have place to hide things like this?
Agree, lets make it more of an effort to enable, it should not be
something that the casual user comes across and thinks it would
interesting to try. Or at least make it clear from the help text that
this may result in a non-booting system on some distros.
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 0:50 ` Tejun Heo
2008-10-11 1:42 ` H. Peter Anvin
2008-10-11 7:11 ` [bug] latest -git boot hang Jens Axboe
@ 2008-10-11 7:19 ` Ingo Molnar
2008-10-11 14:08 ` Jens Axboe
2008-10-14 15:07 ` [bug] latest -git boot hang Stephen Smalley
2008-10-13 8:41 ` Takashi Iwai
3 siblings, 2 replies; 25+ messages in thread
From: Ingo Molnar @ 2008-10-11 7:19 UTC (permalink / raw)
To: Tejun Heo
Cc: Linus Torvalds, linux-kernel, Andrew Morton, Jens Axboe,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
* Tejun Heo <tj@kernel.org> wrote:
> > It does sound like perhaps the option should be hidden more, if it's
> > really only reasonably enabled for some very specialized distro
> > debuggers, not normal kernel people.
>
> Yeap, if fedora didn't work, I think it should be hidden. Do we
> already have place to hide things like this?
in my local testing i'm using simple annotations like the one attached
further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
upstream, and merge my annotations for various kernel features that
break a generic distro bootup?
Right now i have about 40 such annotations for -tip testing:
fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
security/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
and note the stark contrast to CONFIG_BROKEN - sometimes a given
functionality is really not meant to be enabled on a generic system.
Ingo
---------------->
Subject: qa: no ext devt
From: Ingo Molnar <mingo@elte.hu>
Date: Fri Oct 10 22:54:57 CEST 2008
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
lib/Kconfig.debug | 2 ++
1 file changed, 2 insertions(+)
Index: linux/lib/Kconfig.debug
===================================================================
--- linux.orig/lib/Kconfig.debug
+++ linux/lib/Kconfig.debug
@@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
bool "Force extended block device numbers and spread them"
depends on DEBUG_KERNEL
depends on BLOCK
+ depends on BROKEN_BOOT_ALLOWED
+ select BROKEN_BOOT
default n
help
Conventionally, block device numbers are allocated from
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 7:19 ` Ingo Molnar
@ 2008-10-11 14:08 ` Jens Axboe
2008-10-11 14:33 ` Ingo Molnar
2008-10-14 15:07 ` [bug] latest -git boot hang Stephen Smalley
1 sibling, 1 reply; 25+ messages in thread
From: Jens Axboe @ 2008-10-11 14:08 UTC (permalink / raw)
To: Ingo Molnar
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Sat, Oct 11 2008, Ingo Molnar wrote:
>
> * Tejun Heo <tj@kernel.org> wrote:
>
> > > It does sound like perhaps the option should be hidden more, if it's
> > > really only reasonably enabled for some very specialized distro
> > > debuggers, not normal kernel people.
> >
> > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > already have place to hide things like this?
>
> in my local testing i'm using simple annotations like the one attached
> further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> upstream, and merge my annotations for various kernel features that
> break a generic distro bootup?
>
> Right now i have about 40 such annotations for -tip testing:
>
> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
>
> and note the stark contrast to CONFIG_BROKEN - sometimes a given
> functionality is really not meant to be enabled on a generic system.
>
> Ingo
>
> ---------------->
> Subject: qa: no ext devt
> From: Ingo Molnar <mingo@elte.hu>
> Date: Fri Oct 10 22:54:57 CEST 2008
>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> lib/Kconfig.debug | 2 ++
> 1 file changed, 2 insertions(+)
>
> Index: linux/lib/Kconfig.debug
> ===================================================================
> --- linux.orig/lib/Kconfig.debug
> +++ linux/lib/Kconfig.debug
> @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> bool "Force extended block device numbers and spread them"
> depends on DEBUG_KERNEL
> depends on BLOCK
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
> default n
> help
> Conventionally, block device numbers are allocated from
What is BROKEN_BOOT_ALLOWED? Honestly, I'd prefer to just put an extra
2-3 line paragraph in the help entry, saying that it's quite possible
that current distros wont boot with this testing code enabled. Since it
default to 'n', people should read the entry before turning it on
anyway.
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 14:08 ` Jens Axboe
@ 2008-10-11 14:33 ` Ingo Molnar
2008-10-11 14:39 ` Jens Axboe
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-11 14:33 UTC (permalink / raw)
To: Jens Axboe
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
* Jens Axboe <jens.axboe@oracle.com> wrote:
> On Sat, Oct 11 2008, Ingo Molnar wrote:
> >
> > * Tejun Heo <tj@kernel.org> wrote:
> >
> > > > It does sound like perhaps the option should be hidden more, if it's
> > > > really only reasonably enabled for some very specialized distro
> > > > debuggers, not normal kernel people.
> > >
> > > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > > already have place to hide things like this?
> >
> > in my local testing i'm using simple annotations like the one attached
> > further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> > upstream, and merge my annotations for various kernel features that
> > break a generic distro bootup?
> >
> > Right now i have about 40 such annotations for -tip testing:
> >
> > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
> >
> > and note the stark contrast to CONFIG_BROKEN - sometimes a given
> > functionality is really not meant to be enabled on a generic system.
> >
> > Ingo
> >
> > ---------------->
> > Subject: qa: no ext devt
> > From: Ingo Molnar <mingo@elte.hu>
> > Date: Fri Oct 10 22:54:57 CEST 2008
> >
> > Signed-off-by: Ingo Molnar <mingo@elte.hu>
> > ---
> > lib/Kconfig.debug | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > Index: linux/lib/Kconfig.debug
> > ===================================================================
> > --- linux.orig/lib/Kconfig.debug
> > +++ linux/lib/Kconfig.debug
> > @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> > bool "Force extended block device numbers and spread them"
> > depends on DEBUG_KERNEL
> > depends on BLOCK
> > + depends on BROKEN_BOOT_ALLOWED
> > + select BROKEN_BOOT
> > default n
> > help
> > Conventionally, block device numbers are allocated from
>
> What is BROKEN_BOOT_ALLOWED? Honestly, I'd prefer to just put an extra
> 2-3 line paragraph in the help entry, saying that it's quite possible
> that current distros wont boot with this testing code enabled. Since
> it default to 'n', people should read the entry before turning it on
> anyway.
well, the extra BROKEN_BOOT_ALLOWED helps my automated test-setup to
decide whether a .config that it's testing (either sent by a reporter or
generated randomly) can be booted.
If CONFIG_BROKEN_BOOT_ALLOWED=y, then i allow config options that can
break the bootup. In that case, and _if_ such a possibly-boot-breaking
config option is enabled, CONFIG_BROKEN_BOOT is set - which my scripts
detect.
This gives the test harness the highest flexibility and annotates those
kernel features / drivers which can result in a (possibly) broken
bootup. The scripts cannot read help entries.
Ingo
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 14:33 ` Ingo Molnar
@ 2008-10-11 14:39 ` Jens Axboe
2008-10-11 14:58 ` Ingo Molnar
0 siblings, 1 reply; 25+ messages in thread
From: Jens Axboe @ 2008-10-11 14:39 UTC (permalink / raw)
To: Ingo Molnar
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Sat, Oct 11 2008, Ingo Molnar wrote:
>
> * Jens Axboe <jens.axboe@oracle.com> wrote:
>
> > On Sat, Oct 11 2008, Ingo Molnar wrote:
> > >
> > > * Tejun Heo <tj@kernel.org> wrote:
> > >
> > > > > It does sound like perhaps the option should be hidden more, if it's
> > > > > really only reasonably enabled for some very specialized distro
> > > > > debuggers, not normal kernel people.
> > > >
> > > > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > > > already have place to hide things like this?
> > >
> > > in my local testing i'm using simple annotations like the one attached
> > > further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> > > upstream, and merge my annotations for various kernel features that
> > > break a generic distro bootup?
> > >
> > > Right now i have about 40 such annotations for -tip testing:
> > >
> > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
> > >
> > > and note the stark contrast to CONFIG_BROKEN - sometimes a given
> > > functionality is really not meant to be enabled on a generic system.
> > >
> > > Ingo
> > >
> > > ---------------->
> > > Subject: qa: no ext devt
> > > From: Ingo Molnar <mingo@elte.hu>
> > > Date: Fri Oct 10 22:54:57 CEST 2008
> > >
> > > Signed-off-by: Ingo Molnar <mingo@elte.hu>
> > > ---
> > > lib/Kconfig.debug | 2 ++
> > > 1 file changed, 2 insertions(+)
> > >
> > > Index: linux/lib/Kconfig.debug
> > > ===================================================================
> > > --- linux.orig/lib/Kconfig.debug
> > > +++ linux/lib/Kconfig.debug
> > > @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> > > bool "Force extended block device numbers and spread them"
> > > depends on DEBUG_KERNEL
> > > depends on BLOCK
> > > + depends on BROKEN_BOOT_ALLOWED
> > > + select BROKEN_BOOT
> > > default n
> > > help
> > > Conventionally, block device numbers are allocated from
> >
> > What is BROKEN_BOOT_ALLOWED? Honestly, I'd prefer to just put an extra
> > 2-3 line paragraph in the help entry, saying that it's quite possible
> > that current distros wont boot with this testing code enabled. Since
> > it default to 'n', people should read the entry before turning it on
> > anyway.
>
> well, the extra BROKEN_BOOT_ALLOWED helps my automated test-setup to
> decide whether a .config that it's testing (either sent by a reporter or
> generated randomly) can be booted.
>
> If CONFIG_BROKEN_BOOT_ALLOWED=y, then i allow config options that can
> break the bootup. In that case, and _if_ such a possibly-boot-breaking
> config option is enabled, CONFIG_BROKEN_BOOT is set - which my scripts
> detect.
>
> This gives the test harness the highest flexibility and annotates those
> kernel features / drivers which can result in a (possibly) broken
> bootup. The scripts cannot read help entries.
OK, makes sense to me then, thanks. I was afraid it was some user
exposed parameter, in which case it sounded... interesting :-)
For users, we just need to expand the help entry a bit.
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 14:39 ` Jens Axboe
@ 2008-10-11 14:58 ` Ingo Molnar
2008-10-11 17:58 ` Jens Axboe
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-11 14:58 UTC (permalink / raw)
To: Jens Axboe
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
* Jens Axboe <jens.axboe@oracle.com> wrote:
> On Sat, Oct 11 2008, Ingo Molnar wrote:
> >
> > * Jens Axboe <jens.axboe@oracle.com> wrote:
> >
> > > On Sat, Oct 11 2008, Ingo Molnar wrote:
> > > >
> > > > * Tejun Heo <tj@kernel.org> wrote:
> > > >
> > > > > > It does sound like perhaps the option should be hidden more, if it's
> > > > > > really only reasonably enabled for some very specialized distro
> > > > > > debuggers, not normal kernel people.
> > > > >
> > > > > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > > > > already have place to hide things like this?
> > > >
> > > > in my local testing i'm using simple annotations like the one attached
> > > > further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> > > > upstream, and merge my annotations for various kernel features that
> > > > break a generic distro bootup?
> > > >
> > > > Right now i have about 40 such annotations for -tip testing:
> > > >
> > > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> > > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
> > > >
> > > > and note the stark contrast to CONFIG_BROKEN - sometimes a given
> > > > functionality is really not meant to be enabled on a generic system.
> > > >
> > > > Ingo
> > > >
> > > > ---------------->
> > > > Subject: qa: no ext devt
> > > > From: Ingo Molnar <mingo@elte.hu>
> > > > Date: Fri Oct 10 22:54:57 CEST 2008
> > > >
> > > > Signed-off-by: Ingo Molnar <mingo@elte.hu>
> > > > ---
> > > > lib/Kconfig.debug | 2 ++
> > > > 1 file changed, 2 insertions(+)
> > > >
> > > > Index: linux/lib/Kconfig.debug
> > > > ===================================================================
> > > > --- linux.orig/lib/Kconfig.debug
> > > > +++ linux/lib/Kconfig.debug
> > > > @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> > > > bool "Force extended block device numbers and spread them"
> > > > depends on DEBUG_KERNEL
> > > > depends on BLOCK
> > > > + depends on BROKEN_BOOT_ALLOWED
> > > > + select BROKEN_BOOT
> > > > default n
> > > > help
> > > > Conventionally, block device numbers are allocated from
> > >
> > > What is BROKEN_BOOT_ALLOWED? Honestly, I'd prefer to just put an extra
> > > 2-3 line paragraph in the help entry, saying that it's quite possible
> > > that current distros wont boot with this testing code enabled. Since
> > > it default to 'n', people should read the entry before turning it on
> > > anyway.
> >
> > well, the extra BROKEN_BOOT_ALLOWED helps my automated test-setup to
> > decide whether a .config that it's testing (either sent by a reporter or
> > generated randomly) can be booted.
> >
> > If CONFIG_BROKEN_BOOT_ALLOWED=y, then i allow config options that can
> > break the bootup. In that case, and _if_ such a possibly-boot-breaking
> > config option is enabled, CONFIG_BROKEN_BOOT is set - which my scripts
> > detect.
> >
> > This gives the test harness the highest flexibility and annotates those
> > kernel features / drivers which can result in a (possibly) broken
> > bootup. The scripts cannot read help entries.
>
> OK, makes sense to me then, thanks. I was afraid it was some user
> exposed parameter, in which case it sounded... interesting :-)
>
> For users, we just need to expand the help entry a bit.
We could perhaps rename it to:
CONFIG_ALLOW_NON_GENERIC_FEATURES=y
?
It's usually things like ISA drivers or very specific hardware support
that falls into this category - none of our major features or drivers,
so you should not be worried about any limitation effects of such a
feature. The help text does not help me much in that case, it was not me
who enabled that option, i just want to use a .config from some other
person and want to reproduce a bugreport. I do that almost on a daily
basis.
And this CONFIG_ALLOW_NON_GENERIC_FEATURES=y option could even be
exposed to users. I have three first-hand usecases for it:
First usecase: when i get a .config from a tester and want to test-boot
it on a box, i dont want to spend hours of .config bisection just to
find out that it has a driver enabled that is known to break generic
boxes. Yes, this has happened to me in the past.
The second usecase where i utilize it is random kernel testing: there
randconfig is what enables drivers, not me, so the help text does not
help much.
Third usecase: where i just accidentally enable something i should not
have enabled. It's nice to have tools around that can protect me from
such mistakes. This too has happened to me.
So i find it very convenient that i can just disable
CONFIG_ALLOW_NON_GENERIC_FEATURES - which automatically disables all
possibly-broken functionality.
Ingo
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 14:58 ` Ingo Molnar
@ 2008-10-11 17:58 ` Jens Axboe
2008-10-13 6:41 ` [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT Tejun Heo
0 siblings, 1 reply; 25+ messages in thread
From: Jens Axboe @ 2008-10-11 17:58 UTC (permalink / raw)
To: Ingo Molnar
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Sat, Oct 11 2008, Ingo Molnar wrote:
>
> * Jens Axboe <jens.axboe@oracle.com> wrote:
>
> > On Sat, Oct 11 2008, Ingo Molnar wrote:
> > >
> > > * Jens Axboe <jens.axboe@oracle.com> wrote:
> > >
> > > > On Sat, Oct 11 2008, Ingo Molnar wrote:
> > > > >
> > > > > * Tejun Heo <tj@kernel.org> wrote:
> > > > >
> > > > > > > It does sound like perhaps the option should be hidden more, if it's
> > > > > > > really only reasonably enabled for some very specialized distro
> > > > > > > debuggers, not normal kernel people.
> > > > > >
> > > > > > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > > > > > already have place to hide things like this?
> > > > >
> > > > > in my local testing i'm using simple annotations like the one attached
> > > > > further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> > > > > upstream, and merge my annotations for various kernel features that
> > > > > break a generic distro bootup?
> > > > >
> > > > > Right now i have about 40 such annotations for -tip testing:
> > > > >
> > > > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> > > > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > > lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > > > arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
> > > > >
> > > > > and note the stark contrast to CONFIG_BROKEN - sometimes a given
> > > > > functionality is really not meant to be enabled on a generic system.
> > > > >
> > > > > Ingo
> > > > >
> > > > > ---------------->
> > > > > Subject: qa: no ext devt
> > > > > From: Ingo Molnar <mingo@elte.hu>
> > > > > Date: Fri Oct 10 22:54:57 CEST 2008
> > > > >
> > > > > Signed-off-by: Ingo Molnar <mingo@elte.hu>
> > > > > ---
> > > > > lib/Kconfig.debug | 2 ++
> > > > > 1 file changed, 2 insertions(+)
> > > > >
> > > > > Index: linux/lib/Kconfig.debug
> > > > > ===================================================================
> > > > > --- linux.orig/lib/Kconfig.debug
> > > > > +++ linux/lib/Kconfig.debug
> > > > > @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> > > > > bool "Force extended block device numbers and spread them"
> > > > > depends on DEBUG_KERNEL
> > > > > depends on BLOCK
> > > > > + depends on BROKEN_BOOT_ALLOWED
> > > > > + select BROKEN_BOOT
> > > > > default n
> > > > > help
> > > > > Conventionally, block device numbers are allocated from
> > > >
> > > > What is BROKEN_BOOT_ALLOWED? Honestly, I'd prefer to just put an extra
> > > > 2-3 line paragraph in the help entry, saying that it's quite possible
> > > > that current distros wont boot with this testing code enabled. Since
> > > > it default to 'n', people should read the entry before turning it on
> > > > anyway.
> > >
> > > well, the extra BROKEN_BOOT_ALLOWED helps my automated test-setup to
> > > decide whether a .config that it's testing (either sent by a reporter or
> > > generated randomly) can be booted.
> > >
> > > If CONFIG_BROKEN_BOOT_ALLOWED=y, then i allow config options that can
> > > break the bootup. In that case, and _if_ such a possibly-boot-breaking
> > > config option is enabled, CONFIG_BROKEN_BOOT is set - which my scripts
> > > detect.
> > >
> > > This gives the test harness the highest flexibility and annotates those
> > > kernel features / drivers which can result in a (possibly) broken
> > > bootup. The scripts cannot read help entries.
> >
> > OK, makes sense to me then, thanks. I was afraid it was some user
> > exposed parameter, in which case it sounded... interesting :-)
> >
> > For users, we just need to expand the help entry a bit.
>
> We could perhaps rename it to:
>
> CONFIG_ALLOW_NON_GENERIC_FEATURES=y
>
> ?
Hmm dunno, that option name still doesn't really tell me what the heck
it's about...
> It's usually things like ISA drivers or very specific hardware support
> that falls into this category - none of our major features or drivers,
> so you should not be worried about any limitation effects of such a
> feature. The help text does not help me much in that case, it was not me
> who enabled that option, i just want to use a .config from some other
> person and want to reproduce a bugreport. I do that almost on a daily
> basis.
Nope, for you the help text does not do anything. So I do agree that
having a config option helps that particular case.
> And this CONFIG_ALLOW_NON_GENERIC_FEATURES=y option could even be
> exposed to users. I have three first-hand usecases for it:
>
> First usecase: when i get a .config from a tester and want to test-boot
> it on a box, i dont want to spend hours of .config bisection just to
> find out that it has a driver enabled that is known to break generic
> boxes. Yes, this has happened to me in the past.
>
> The second usecase where i utilize it is random kernel testing: there
> randconfig is what enables drivers, not me, so the help text does not
> help much.
>
> Third usecase: where i just accidentally enable something i should not
> have enabled. It's nice to have tools around that can protect me from
> such mistakes. This too has happened to me.
>
> So i find it very convenient that i can just disable
> CONFIG_ALLOW_NON_GENERIC_FEATURES - which automatically disables all
> possibly-broken functionality.
There's still a multitude of ways you could get a broken kernel, but you
have a LOT more experience in this automated testing area so I'll take
you word for it...
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT
2008-10-11 17:58 ` Jens Axboe
@ 2008-10-13 6:41 ` Tejun Heo
2008-10-13 8:46 ` Jens Axboe
2008-10-14 15:15 ` Christoph Hellwig
0 siblings, 2 replies; 25+ messages in thread
From: Tejun Heo @ 2008-10-13 6:41 UTC (permalink / raw)
To: Jens Axboe
Cc: Ingo Molnar, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
CONFIG_DEBUG_BLOCK_EXT_DEVT can break booting even on some modern
distros. Add BIG FAT WARNING to keep people at a safe distance.
Signed-off-by: Tejun Heo <tj@kernel.org>
---
Okay, w/ or w/o Ingo's change, it would be worthwhile to warn
people more clearly so that we can at least say 'told ya'. :-)
lib/Kconfig.debug | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index aa81d28..44e67a1 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -652,6 +652,11 @@ config DEBUG_BLOCK_EXT_DEVT
depends on BLOCK
default n
help
+ BIG FAT WARNING: ENABLING THIS OPTION MIGHT BREAK BOOTING ON
+ SOME DISTRIBUTIONS. DO NOT ENABLE THIS UNLESS YOU KNOW WHAT
+ YOU ARE DOING. Distros, please enable this and fix whatever
+ is broken.
+
Conventionally, block device numbers are allocated from
predetermined contiguous area. However, extended block area
may introduce non-contiguous block device numbers. This
^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 0:50 ` Tejun Heo
` (2 preceding siblings ...)
2008-10-11 7:19 ` Ingo Molnar
@ 2008-10-13 8:41 ` Takashi Iwai
3 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2008-10-13 8:41 UTC (permalink / raw)
To: Tejun Heo
Cc: Linus Torvalds, Ingo Molnar, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, H. Peter Anvin, Yinghai Lu
At Sat, 11 Oct 2008 09:50:19 +0900,
Tejun Heo wrote:
>
> Hello,
>
> Linus Torvalds wrote:
> > On Fri, 10 Oct 2008, Ingo Molnar wrote:
> >> | 870d6656126add8e383645732b03df2b7ccd4f94 is first bad commit
> >> | commit 870d6656126add8e383645732b03df2b7ccd4f94
> >> | Author: Tejun Heo <tj@kernel.org>
> >> | Date: Mon Aug 25 19:47:25 2008 +0900
> >> |
> >> | block: implement CONFIG_DEBUG_BLOCK_EXT_DEVT
> >>
> >> and meanwhile 2 other test-systems failed to boot as well - both have
> >> CONFIG_DEBUG_BLOCK_EXT_DEVT=y.
> >>
> >> So i guess this debug feature is working as expected.
> >
> > Ahh, yeah, sounds that way.
> >
> >> I guess we should mark CONFIG_DEBUG_BLOCK_EXT_DEVT=y as really dangerous
> >> to enable because contemporary distributions (i tried Fedora 9) fail
> >> with it too?
> >
> > Tejun - do you know whether _any_ distro will boot with
> > CONFIG_DEBUG_BLOCK_EXT_DEVT=y?
>
> Hmmm... openSUSE 11.0 didn't have any problem with it, which I was a bit
> pleasantly surprised about. I haven't tested management tools but the
> base system worked just fine.
FYI, even on openSUSE 11.0, it gets a problem when you run mkinitrd on
the kernel with CONFIG_DEBUG_BLOCK_EXT_DEVT=y. It's a problem of SUSE
mkinitrd, though.
Takashi
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT
2008-10-13 6:41 ` [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT Tejun Heo
@ 2008-10-13 8:46 ` Jens Axboe
2008-10-14 15:15 ` Christoph Hellwig
1 sibling, 0 replies; 25+ messages in thread
From: Jens Axboe @ 2008-10-13 8:46 UTC (permalink / raw)
To: Tejun Heo
Cc: Ingo Molnar, Linus Torvalds, linux-kernel, Andrew Morton,
Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Mon, Oct 13 2008, Tejun Heo wrote:
> CONFIG_DEBUG_BLOCK_EXT_DEVT can break booting even on some modern
> distros. Add BIG FAT WARNING to keep people at a safe distance.
>
> Signed-off-by: Tejun Heo <tj@kernel.org>
> ---
> Okay, w/ or w/o Ingo's change, it would be worthwhile to warn
> people more clearly so that we can at least say 'told ya'. :-)
>
> lib/Kconfig.debug | 5 +++++
> 1 file changed, 5 insertions(+)
Agree, this looks appropriate. I'll add it.
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 1:42 ` H. Peter Anvin
@ 2008-10-13 9:13 ` Tejun Heo
2008-10-13 11:07 ` [PATCH] block: add partition attribute for partition number Tejun Heo
0 siblings, 1 reply; 25+ messages in thread
From: Tejun Heo @ 2008-10-13 9:13 UTC (permalink / raw)
To: H. Peter Anvin
Cc: Linus Torvalds, Ingo Molnar, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, Yinghai Lu
H. Peter Anvin wrote:
> Tejun Heo wrote:
>>
>> Yeap, if fedora didn't work, I think it should be hidden. Do we already
>> have place to hide things like this?
>>
>
> By the way, I don't see anything in this patchset that lets userspace
> discover the parent device. Since the old rule of
>
> partition device = parent device + partition number
>
> ... no longer holds, this is a serious omission for something that is in
> mainstream (and therefore *requires* that a new interface is deployed
> for anything that cares.)
>
> This will have to be addressed before 2.6.28 final.
The sysfs directory for the parent can be reached by "cd -P
/sys/class/block/PART/..". That should be enough, right? I'll add
the partition attribute but I don't really think we need to do
anything to improve parent discovery.
Thanks.
--
tejun
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH] block: add partition attribute for partition number
2008-10-13 9:13 ` Tejun Heo
@ 2008-10-13 11:07 ` Tejun Heo
2008-10-13 11:27 ` Jens Axboe
0 siblings, 1 reply; 25+ messages in thread
From: Tejun Heo @ 2008-10-13 11:07 UTC (permalink / raw)
To: H. Peter Anvin
Cc: Linus Torvalds, Ingo Molnar, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, Yinghai Lu
With extended devt, finding out the partition number becomes a bit
more challenging as subtracting the minor number from that of the
parent device doesn't work anymore. The only thing left is parsing
the partition name which is brittle and not exactly universal (some
have '-' between the device name and partition number while others
don't). This patch introduced partition attribute which contains the
partition number of the device. This should make finding partitions
and its index easier.
This problem and solution were suggested by H. Peter Anvin.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: H. Peter Anvin <hpa@zytor.com>
---
fs/partitions/check.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/fs/partitions/check.c b/fs/partitions/check.c
index 7408227..4684a49 100644
--- a/fs/partitions/check.c
+++ b/fs/partitions/check.c
@@ -195,6 +195,14 @@ check_partition(struct gendisk *hd, struct block_device *bdev)
return ERR_PTR(res);
}
+static ssize_t part_partition_show(struct device *dev,
+ struct device_attribute *attr, char *buf)
+{
+ struct hd_struct *p = dev_to_part(dev);
+
+ return sprintf(buf, "%d\n", p->partno);
+}
+
static ssize_t part_start_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
@@ -260,6 +268,7 @@ ssize_t part_fail_store(struct device *dev,
}
#endif
+static DEVICE_ATTR(partition, S_IRUGO, part_partition_show, NULL);
static DEVICE_ATTR(start, S_IRUGO, part_start_show, NULL);
static DEVICE_ATTR(size, S_IRUGO, part_size_show, NULL);
static DEVICE_ATTR(stat, S_IRUGO, part_stat_show, NULL);
@@ -269,6 +278,7 @@ static struct device_attribute dev_attr_fail =
#endif
static struct attribute *part_attrs[] = {
+ &dev_attr_partition.attr,
&dev_attr_start.attr,
&dev_attr_size.attr,
&dev_attr_stat.attr,
^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [PATCH] block: add partition attribute for partition number
2008-10-13 11:07 ` [PATCH] block: add partition attribute for partition number Tejun Heo
@ 2008-10-13 11:27 ` Jens Axboe
0 siblings, 0 replies; 25+ messages in thread
From: Jens Axboe @ 2008-10-13 11:27 UTC (permalink / raw)
To: Tejun Heo
Cc: H. Peter Anvin, Linus Torvalds, Ingo Molnar, linux-kernel,
Andrew Morton, Thomas Gleixner, Yinghai Lu
On Mon, Oct 13 2008, Tejun Heo wrote:
> With extended devt, finding out the partition number becomes a bit
> more challenging as subtracting the minor number from that of the
> parent device doesn't work anymore. The only thing left is parsing
> the partition name which is brittle and not exactly universal (some
> have '-' between the device name and partition number while others
> don't). This patch introduced partition attribute which contains the
> partition number of the device. This should make finding partitions
> and its index easier.
>
> This problem and solution were suggested by H. Peter Anvin.
Applied to for-linus
--
Jens Axboe
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-11 7:19 ` Ingo Molnar
2008-10-11 14:08 ` Jens Axboe
@ 2008-10-14 15:07 ` Stephen Smalley
2008-10-14 15:12 ` Ingo Molnar
1 sibling, 1 reply; 25+ messages in thread
From: Stephen Smalley @ 2008-10-14 15:07 UTC (permalink / raw)
To: Ingo Molnar
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, H. Peter Anvin, Yinghai Lu,
James Morris, Eric Paris
On Sat, 2008-10-11 at 09:19 +0200, Ingo Molnar wrote:
> * Tejun Heo <tj@kernel.org> wrote:
>
> > > It does sound like perhaps the option should be hidden more, if it's
> > > really only reasonably enabled for some very specialized distro
> > > debuggers, not normal kernel people.
> >
> > Yeap, if fedora didn't work, I think it should be hidden. Do we
> > already have place to hide things like this?
>
> in my local testing i'm using simple annotations like the one attached
> further below. Any objections against sending my BROKEN_BOOT_ALLOWED kit
> upstream, and merge my annotations for various kernel features that
> break a generic distro bootup?
>
> Right now i have about 40 such annotations for -tip testing:
>
> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> security/Kconfig: depends on BROKEN_BOOT_ALLOWED
What in particular under fs/Kconfig and security/*Kconfig falls into
this category, and why? What constitutes a "generic distro bootup"?
For distros that support SELinux, it obviously shouldn't break the
bootup (there have of course been cases where it has, but those were
bugs that have been addressed, including the recent /proc/net breakage),
and for other distros, it should yield no effect as no policy will be
loaded and thus SELinux just allows everything.
> drivers/net/appletalk/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/net/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/media/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/scsi/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/watchdog/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/ide/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/i2c/busses/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/block/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/video/console/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/mtd/Kconfig: depends on BROKEN_BOOT_ALLOWED
> drivers/isdn/icn/Kconfig: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.kgdb: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> lib/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig.debug: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: # depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig: depends on BROKEN_BOOT_ALLOWED
> arch/x86/Kconfig.cpu: depends on BROKEN_BOOT_ALLOWED
>
> and note the stark contrast to CONFIG_BROKEN - sometimes a given
> functionality is really not meant to be enabled on a generic system.
>
> Ingo
>
> ---------------->
> Subject: qa: no ext devt
> From: Ingo Molnar <mingo@elte.hu>
> Date: Fri Oct 10 22:54:57 CEST 2008
>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> lib/Kconfig.debug | 2 ++
> 1 file changed, 2 insertions(+)
>
> Index: linux/lib/Kconfig.debug
> ===================================================================
> --- linux.orig/lib/Kconfig.debug
> +++ linux/lib/Kconfig.debug
> @@ -670,6 +670,8 @@ config DEBUG_BLOCK_EXT_DEVT
> bool "Force extended block device numbers and spread them"
> depends on DEBUG_KERNEL
> depends on BLOCK
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
> default n
> help
> Conventionally, block device numbers are allocated from
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
Stephen Smalley
National Security Agency
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-14 15:07 ` [bug] latest -git boot hang Stephen Smalley
@ 2008-10-14 15:12 ` Ingo Molnar
2008-10-14 15:24 ` Stephen Smalley
0 siblings, 1 reply; 25+ messages in thread
From: Ingo Molnar @ 2008-10-14 15:12 UTC (permalink / raw)
To: Stephen Smalley
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, H. Peter Anvin, Yinghai Lu,
James Morris, Eric Paris
* Stephen Smalley <sds@tycho.nsa.gov> wrote:
> > Right now i have about 40 such annotations for -tip testing:
> >
> > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
>
> What in particular under fs/Kconfig and security/*Kconfig falls into
> this category, and why? What constitutes a "generic distro bootup"?
> For distros that support SELinux, it obviously shouldn't break the
> bootup (there have of course been cases where it has, but those were
> bugs that have been addressed, including the recent /proc/net
> breakage), and for other distros, it should yield no effect as no
> policy will be loaded and thus SELinux just allows everything.
got this one for rootplug:
--- linux.orig/security/Kconfig
+++ linux/security/Kconfig
@@ -93,6 +93,11 @@ config SECURITY_FILE_CAPABILITIES
config SECURITY_ROOTPLUG
bool "Root Plug Support"
depends on USB=y && SECURITY
+
+ # fails with hard-to-debug "could not find init" boot failure
+ depends on BROKEN_BOOT_ALLOWED
+ select BROKEN_BOOT
and this one:
--- linux.orig/security/selinux/Kconfig
+++ linux/security/selinux/Kconfig
@@ -97,6 +97,11 @@ config SECURITY_SELINUX_CHECKREQPROT_VAL
config SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT
bool "NSA SELinux enable new secmark network controls by default"
depends on SECURITY_SELINUX
+
+ # old system booted up with this cannot ssh out
+ depends on BROKEN_BOOT_ALLOWED
+ select BROKEN_BOOT
i also have this temporary annotation:
--- linux.orig/security/smack/Kconfig
+++ linux/security/smack/Kconfig
@@ -1,6 +1,9 @@
config SECURITY_SMACK
bool "Simplified Mandatory Access Control Kernel Support"
depends on NETLABEL && SECURITY_NETWORK
+ # breaks networking (TCP connections)
+ depends on BROKEN_BOOT_ALLOWED
+ select BROKEN_BOOT
default n
help
This selects the Simplified Mandatory Access Control Kernel.
has this problem been fixed? A test is only a success if the freshly
booted kernel can autonomously ssh out over a real network and can
indicate success to the QA server. I've got a good mix of old and new
distros as well.
Ingo
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT
2008-10-13 6:41 ` [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT Tejun Heo
2008-10-13 8:46 ` Jens Axboe
@ 2008-10-14 15:15 ` Christoph Hellwig
2008-10-14 17:31 ` Tejun Heo
1 sibling, 1 reply; 25+ messages in thread
From: Christoph Hellwig @ 2008-10-14 15:15 UTC (permalink / raw)
To: Tejun Heo
Cc: Jens Axboe, Ingo Molnar, Linus Torvalds, linux-kernel,
Andrew Morton, Thomas Gleixner, H. Peter Anvin, Yinghai Lu
On Mon, Oct 13, 2008 at 03:41:35PM +0900, Tejun Heo wrote:
> CONFIG_DEBUG_BLOCK_EXT_DEVT can break booting even on some modern
> distros. Add BIG FAT WARNING to keep people at a safe distance.
Just remove the whole "debug" code. It clutters up all block drivers with
ifdefs and doesn't actually provide any benefit.
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-14 15:12 ` Ingo Molnar
@ 2008-10-14 15:24 ` Stephen Smalley
2008-10-15 1:48 ` Casey Schaufler
0 siblings, 1 reply; 25+ messages in thread
From: Stephen Smalley @ 2008-10-14 15:24 UTC (permalink / raw)
To: Ingo Molnar
Cc: Tejun Heo, Linus Torvalds, linux-kernel, Andrew Morton,
Jens Axboe, Thomas Gleixner, H. Peter Anvin, Yinghai Lu,
James Morris, Eric Paris, Casey Schaufler
On Tue, 2008-10-14 at 17:12 +0200, Ingo Molnar wrote:
> * Stephen Smalley <sds@tycho.nsa.gov> wrote:
>
> > > Right now i have about 40 such annotations for -tip testing:
> > >
> > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
> > > security/Kconfig: depends on BROKEN_BOOT_ALLOWED
> >
> > What in particular under fs/Kconfig and security/*Kconfig falls into
> > this category, and why? What constitutes a "generic distro bootup"?
> > For distros that support SELinux, it obviously shouldn't break the
> > bootup (there have of course been cases where it has, but those were
> > bugs that have been addressed, including the recent /proc/net
> > breakage), and for other distros, it should yield no effect as no
> > policy will be loaded and thus SELinux just allows everything.
>
> got this one for rootplug:
>
> --- linux.orig/security/Kconfig
> +++ linux/security/Kconfig
> @@ -93,6 +93,11 @@ config SECURITY_FILE_CAPABILITIES
> config SECURITY_ROOTPLUG
> bool "Root Plug Support"
> depends on USB=y && SECURITY
> +
> + # fails with hard-to-debug "could not find init" boot failure
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
Makes sense - rootplug truly is "specialized".
>
> and this one:
>
> --- linux.orig/security/selinux/Kconfig
> +++ linux/security/selinux/Kconfig
> @@ -97,6 +97,11 @@ config SECURITY_SELINUX_CHECKREQPROT_VAL
> config SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT
> bool "NSA SELinux enable new secmark network controls by default"
> depends on SECURITY_SELINUX
> +
> + # old system booted up with this cannot ssh out
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
What is the oldest distro you test against? This one does need to be
disabled for distros that predate the policy support for secmark, but
we'd really like to deprecate and ultimately remove the legacy network
controls from SELinux.
> i also have this temporary annotation:
>
> --- linux.orig/security/smack/Kconfig
> +++ linux/security/smack/Kconfig
> @@ -1,6 +1,9 @@
> config SECURITY_SMACK
> bool "Simplified Mandatory Access Control Kernel Support"
> depends on NETLABEL && SECURITY_NETWORK
> + # breaks networking (TCP connections)
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
> default n
> help
> This selects the Simplified Mandatory Access Control Kernel.
>
> has this problem been fixed? A test is only a success if the freshly
> booted kernel can autonomously ssh out over a real network and can
> indicate success to the QA server. I've got a good mix of old and new
> distros as well.
I thought that Casey had changed Smack such that packets wouldn't be
explicitly labeled by default when they were at the default/ambient
network label and thus wouldn't break sshd.
--
Stephen Smalley
National Security Agency
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT
2008-10-14 15:15 ` Christoph Hellwig
@ 2008-10-14 17:31 ` Tejun Heo
0 siblings, 0 replies; 25+ messages in thread
From: Tejun Heo @ 2008-10-14 17:31 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Jens Axboe, Ingo Molnar, Linus Torvalds, linux-kernel,
Andrew Morton, Thomas Gleixner, H. Peter Anvin, Yinghai Lu
Christoph Hellwig wrote:
> On Mon, Oct 13, 2008 at 03:41:35PM +0900, Tejun Heo wrote:
>> CONFIG_DEBUG_BLOCK_EXT_DEVT can break booting even on some modern
>> distros. Add BIG FAT WARNING to keep people at a safe distance.
>
> Just remove the whole "debug" code. It clutters up all block drivers with
> ifdefs and doesn't actually provide any benefit.
Well, it's mostly intended for distros so that they can enable the
option and detect places where they assume consecutive minors as
otherwise most of those will go unnoticed until some user finally tries
to use more than 16 partitions. As most distros are broken at the
moment, I'm more inclined to keep the debug option and planning on
enabling it during the next devel cycle of openSUSE and ask RH and other
distros to do the same. It adds ifdefs to ide-disk and sd, which isn't
too much. I think it would be good to keep it until at least distros
break out of the consecutive or fixed device number assumption.
Thanks.
--
tejun
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [bug] latest -git boot hang
2008-10-14 15:24 ` Stephen Smalley
@ 2008-10-15 1:48 ` Casey Schaufler
0 siblings, 0 replies; 25+ messages in thread
From: Casey Schaufler @ 2008-10-15 1:48 UTC (permalink / raw)
To: Stephen Smalley
Cc: Ingo Molnar, Tejun Heo, Linus Torvalds, linux-kernel,
Andrew Morton, Jens Axboe, Thomas Gleixner, H. Peter Anvin,
Yinghai Lu, James Morris, Eric Paris
Stephen Smalley wrote:
> On Tue, 2008-10-14 at 17:12 +0200, Ingo Molnar wrote:
>
>> * Stephen Smalley <sds@tycho.nsa.gov> wrote:
>>
>>
>>>> Right now i have about 40 such annotations for -tip testing:
>>>>
>>>> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
>>>> fs/Kconfig: depends on BROKEN_BOOT_ALLOWED
>>>> security/selinux/Kconfig: depends on BROKEN_BOOT_ALLOWED
>>>> security/smack/Kconfig: depends on BROKEN_BOOT_ALLOWED
>>>> security/Kconfig: depends on BROKEN_BOOT_ALLOWED
>>>>
>>> What in particular under fs/Kconfig and security/*Kconfig falls into
>>> this category, and why? What constitutes a "generic distro bootup"?
>>> For distros that support SELinux, it obviously shouldn't break the
>>> bootup (there have of course been cases where it has, but those were
>>> bugs that have been addressed, including the recent /proc/net
>>> breakage), and for other distros, it should yield no effect as no
>>> policy will be loaded and thus SELinux just allows everything.
>>>
>> got this one for rootplug:
>>
>> --- linux.orig/security/Kconfig
>> +++ linux/security/Kconfig
>> @@ -93,6 +93,11 @@ config SECURITY_FILE_CAPABILITIES
>> config SECURITY_ROOTPLUG
>> bool "Root Plug Support"
>> depends on USB=y && SECURITY
>> +
>> + # fails with hard-to-debug "could not find init" boot failure
>> + depends on BROKEN_BOOT_ALLOWED
>> + select BROKEN_BOOT
>>
>
> Makes sense - rootplug truly is "specialized".
>
>
>> and this one:
>>
>> --- linux.orig/security/selinux/Kconfig
>> +++ linux/security/selinux/Kconfig
>> @@ -97,6 +97,11 @@ config SECURITY_SELINUX_CHECKREQPROT_VAL
>> config SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT
>> bool "NSA SELinux enable new secmark network controls by default"
>> depends on SECURITY_SELINUX
>> +
>> + # old system booted up with this cannot ssh out
>> + depends on BROKEN_BOOT_ALLOWED
>> + select BROKEN_BOOT
>>
>
> What is the oldest distro you test against? This one does need to be
> disabled for distros that predate the policy support for secmark, but
> we'd really like to deprecate and ultimately remove the legacy network
> controls from SELinux.
>
>
>> i also have this temporary annotation:
>>
>> --- linux.orig/security/smack/Kconfig
>> +++ linux/security/smack/Kconfig
>> @@ -1,6 +1,9 @@
>> config SECURITY_SMACK
>> bool "Simplified Mandatory Access Control Kernel Support"
>> depends on NETLABEL && SECURITY_NETWORK
>> + # breaks networking (TCP connections)
>> + depends on BROKEN_BOOT_ALLOWED
>> + select BROKEN_BOOT
>> default n
>> help
>> This selects the Simplified Mandatory Access Control Kernel.
>>
>> has this problem been fixed? A test is only a success if the freshly
>> booted kernel can autonomously ssh out over a real network and can
>> indicate success to the QA server. I've got a good mix of old and new
>> distros as well.
>>
>
> I thought that Casey had changed Smack such that packets wouldn't be
> explicitly labeled by default when they were at the default/ambient
> network label and thus wouldn't break sshd.
>
Stephen is correct. The fix has been in for some time.
^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2008-10-15 1:48 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-10 20:30 [bug] latest -git boot hang Ingo Molnar
2008-10-10 20:40 ` Ingo Molnar
2008-10-10 20:56 ` Ingo Molnar
2008-10-10 21:10 ` Linus Torvalds
2008-10-11 0:50 ` Tejun Heo
2008-10-11 1:42 ` H. Peter Anvin
2008-10-13 9:13 ` Tejun Heo
2008-10-13 11:07 ` [PATCH] block: add partition attribute for partition number Tejun Heo
2008-10-13 11:27 ` Jens Axboe
2008-10-11 7:11 ` [bug] latest -git boot hang Jens Axboe
2008-10-11 7:19 ` Ingo Molnar
2008-10-11 14:08 ` Jens Axboe
2008-10-11 14:33 ` Ingo Molnar
2008-10-11 14:39 ` Jens Axboe
2008-10-11 14:58 ` Ingo Molnar
2008-10-11 17:58 ` Jens Axboe
2008-10-13 6:41 ` [PATCH] block: add BIG FAT WARNING to CONFIG_DEBUG_BLOCK_EXT_DEVT Tejun Heo
2008-10-13 8:46 ` Jens Axboe
2008-10-14 15:15 ` Christoph Hellwig
2008-10-14 17:31 ` Tejun Heo
2008-10-14 15:07 ` [bug] latest -git boot hang Stephen Smalley
2008-10-14 15:12 ` Ingo Molnar
2008-10-14 15:24 ` Stephen Smalley
2008-10-15 1:48 ` Casey Schaufler
2008-10-13 8:41 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox