Skip to contentSkip to conversation

2.6.23-rc2-mm2

PATCH In review Andrew Morton 21 participants 74 messages Aug 10, 2007 – Aug 23, 2007

Subsystems (20)
Networking Network drivers SCSI USB +16 more subsystems
lore
Share & tools
lore

Andrew Morton

author maintainer Applied
#0 lore raw

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

- Various problems from 2.6.23-rc2-mm1 were fixed

Boilerplate:

- See the `hot-fixes' directory for any important updates to this patchset.

- To fetch an -mm tree using git, use (for example)

git-fetch git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git tag v2.6.16-rc2-mm1 git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1

- -mm kernel commit activity can be reviewed by subscribing to the mm-commits mailing list.

echo "subscribe mm-commits" | mail [email protected]

- If you hit a bug in -mm and it is not obvious which patch caused it, it is most valuable if you can perform a bisection search to identify which patch introduced the bug. Instructions for this process are at

http://www.zip.com.au/~akpm/linux/patches/stuff/bisecting-mm-trees.txt

But beware that this process takes some time (around ten rebuilds and reboots), so consider reporting the bug first and if we cannot immediately identify the faulty patch, then perform the bisection search.

- When reporting bugs, please try to Cc: the relevant maintainer and mailing list on any email.

- When reporting bugs in this kernel via email, please also rewrite the email Subject: in some manner to reflect the nature of the bug. Some developers filter by Subject: when looking for messages to read.

- Occasional snapshots of the -mm lineup are uploaded to ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/mm/ and are announced on the mm-commits list.

Changes since 2.6.23-rc1-mm2:

origin.patch
git-acpi.patch
git-alsa.patch
git-agpgart.patch
git-audit-master.patch
git-cifs.patch
git-cpufreq.patch
git-dma.patch
git-drm.patch
git-dvb.patch
git-hwmon.patch
git-gfs2-nmw.patch
git-hid.patch
git-ieee1394.patch
git-infiniband.patch
git-input.patch
git-jfs.patch
git-jg-misc.patch
git-kvm.patch
git-libata-all.patch
git-m32r.patch
git-md-accel.patch
git-mips.patch
git-mmc.patch
git-mtd.patch
git-ubi.patch
git-netdev-all.patch
git-ixgbe.patch
git-nfsd.patch
git-ocfs2.patch
git-r8169.patch
git-s390.patch
git-sh.patch
git-sh64.patch
git-scsi-misc.patch
git-unionfs.patch
git-v9fs.patch
git-watchdog.patch
git-wireless.patch
git-ipwireless_cs.patch
git-newsetup.patch
git-xfs.patch
git-cryptodev.patch
git-kgdb.patch

git trees

-genirq-temporary-fix-for-level-triggered-irq-resend-fix.patch -allow-rcutorture-to-handle-synchronize_sched.patch -alpha-o_cloexec-definition.patch -sound-pci-ioremap-iounmap-balancing.patch -fix-ide-ide-add-platform-ide-driver.patch -mmc-make-it-build.patch -mmc-fix-section-mismatch-warnings-for-drivers-mmc-host.patch -git-nfsd-build-fixes.patch
-nfsd-warning-fix.patch -dvb-remove-bogus-bug_on-in-videobuf_dvb_thread.patch

Merged into mainline or a subsystem tree

+hex_dump-add-missing-const-qualifiers.patch +rcu-remove-prototype-for-nonexistent-function.patch +cris-drivers-cdrom-kconfig-no-longer.patch +spidev-warning-fix.patch +timerremove-clockevents_unregister_notifier.patch +fix-compilation-with-gcc-42.patch +fix-compilation-with-gcc-42-fix.patch +lguest-files-should-explicitly-include-asm-paravirth.patch +alpha-werror-fixes-for-sys_titanc.patch +readahead-docbook-fix.patch

More 2.6.23 queue

+pm-fix-dependencies-of-config_suspend-and-config_hibernation-updated-3x.patch

Might be 2.6.23

+acpi-ec-remove-potential-deadlock-from-ec.patch

ACPI fix

+sound-pci-ioremap-iounmap-balancing.patch

ALSA fix

+make-power-supply-class-available-for-arm-architecture.patch

ARM fix

+git-dma-up-fix.patch

Fix git-dma

+jdelvare-i2c-i2c-mpc-dont-disable-i2c-module-on-stop-condition.patch +jdelvare-i2c-i2c-core-make-some-code-static.patch

I2C tree updates

-drivers-i2c-i2c-corec-make-code-static.patch

Dropped

+alpm-increase-number-of-allowable-device-flags.patch

ALPM pathces were updated again

+st340823a-hpa-and-libata.patch
+pata_cmd64x-set-up-mwdma-modes-properly.patch
+ata_piix-disallow-udma-133-on-ich5-ich7.patch

ata/pata things

+ide-hpt366-fix-pci-clock-detection-for-hpt374.patch +ide-hpt366-ultradma-filtering-for-sata-cards.patch +ide-atiixp-dma-setup-fixes.patch +ide-it8213-piix-slc90e66-remove-dma-2-pio.patch +ide-au1xxx-use-ide-tune-dma.patch +ide-hpt34x-fix-config-hpt34x-autodma-n-handling.patch +ide-ide-remove-drive-init-speed-zeroing.patch +ide-ide-remove-ide-use-fast-pio.patch +ide-cs5530-sc1200-add-pio-autotune-fallback-to-ide-dma-check.patch +ide-sl82c105-add-pio-autotune-fallback-to-ide-dma-check.patch +ide-ide-cris-add-pio-autotune-fallback-to-ide-dma-check.patch +ide-ide-pmac-add-pio-autotune-fallback-to-ide-dma-check.patch +ide-ide-remove-ide-dma-check.patch

IDE tree updates

+mips-detect-bcm947xx-cpus.patch
+mips-bcm947xx-support.patch
+rfc-add-bcm947xx-to-kconfig.patch
+mips-add-bcm947xx-to-makefile.patch

MIPS things

-8139too-force-media-setting-fix.patch

Dropped - it broke

+revert-8139too-clean-up-i-o-remapping.patch

Revert dud patch from git-netdev-all

+drivers-net-remove-superfluous-memset.patch +net-tulip-xircom_cbc-remove-superfulous-priv-assignment.patch +3c59x-fix-duplex-configuration.patch +wol-bugfix-for-3c59xc.patch

netdev fixes

-cpqphp_ctrlc-remove-dead-code.patch

Dropped

+drivers-scsi-ipsc-fix-scsi_add_host-warning.patch +drivers-scsi-ipsc-fix-scsi_add_host-warning-fix.patch +scsi-ipsc-warning-fix.patch +message-fusion-remove-redundant-memset.patch

SCSI fixes

+x86_64-vdso-install-unstripped-copies-on-disk.patch

VDSO update

+consolidate-show_regs-and-show_registers-for-i386.patch +i386-clean-up-oops-bug-reports.patch +x86_64-remove-x86_cpu_to_log_apicid.patch

x86 things

+belkin_sa-avoid-divide-by-zero-error.patch

USB fix

+mm-clarify-__add_to_swap_cache-locking-fix.patch

Fix mm-clarify-__add_to_swap_cache-locking.patch

+move-mm_struct-and-vm_area_struct.patch

MM refactoring

+flush-cache-before-installing-new-page-at-migraton.patch +flush-icache-before-set_pte-on-ia64-flush-icache-at-set_pte.patch

MM fixes

+file-capabilities-clear-fcaps-on-inode-change.patch

file caps update

+freezer-introduce-freezer-firendly-waiting-macros-fix.patch

PM fix

+uml-add-vde-networking-support.patch
+uml-remove-unnecessary-hostfs_getattr.patch

UML updates

+aoe-remove-unecessary-wrapper-function.patch +unicode-diacritics-support.patch +mxser-remove-use-of-dead-tty_flipbuf_size-definition.patch +jsm-remove-further-unneeded-crud.patch +remove-consolemaph-from-header-exports.patch +lib-sortc-optimization.patch +x86_64-efi-boot-support-efi-frame-buffer-driver.patch +x86_64-efi-boot-support-efi-boot-document.patch +vfs-check-nanoseconds-in-utimensat.patch +fix-execute-checking-in-permission.patch +exec-remove-unnecessary-check-for-mnt_noexec.patch +clean-out-unused-code-in-dentry-pruning.patch +include-linux-typesh-in-if_fddih.patch

misc

-nfs-remove-congestion_end.patch -lib-percpu_counter_add.patch -lib-percpu_counter-variable-batch.patch -lib-make-percpu_counter_add-take-s64.patch -lib-percpu_counter_set.patch -lib-percpu_counter_sum_positive.patch -lib-percpu_count_sum.patch -lib-percpu_counter_init-error-handling.patch -lib-percpu_counter_init_irq.patch
-mm-bdi-init-hooks.patch
-mm-bdi-init-hooks-fix.patch
-mtd-bdi-init-hooks.patch -mtd-clean-up-the-backing_dev_info-usage.patch -mtd-give-mtdconcat-devices-their-own-backing_dev_info.patch -mm-scalable-bdi-statistics-counters.patch -mm-count-reclaimable-pages-per-bdi.patch -mm-count-writeback-pages-per-bdi.patch -mm-expose-bdi-statistics-in-sysfs.patch -lib-floating-proportions.patch -lib-floating-proportions-_single.patch -mm-per-device-dirty-threshold.patch -mm-dirty-balancing-for-tasks.patch -debug-sysfs-files-for-the-current-ratio-size-total.patch -task-containersv11-add-procfs-interface-containers-bdi-init-hooks.patch

Dropped due to crashiness

+unprivileged-mounts-allow-unprivileged-mounts-fix-subtype-handling.patch

Fix unprivileged-mounts-allow-unprivileged-mounts.patch

+tdfxfb-mtrr-support-fix-2.patch

Fix tdfxfb-mtrr-support.patch

+fuse-fix-permission-checking-on-sticky-directories-fix-setting-i_mode-bits.patch

Fix fuse-fix-permission-checking-on-sticky-directories-fix.patch

+fuse-clean-up-execute-permission-checking.patch

FUES update

+fs-introduce-write_begin-write_end-and-perform_write-aops-revoke-fix.patch

Fix fs-introduce-write_begin-write_end-and-perform_write-aops-revoke.patch

+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch +sysctl-factor-out-sysctl_data.patch +sysctl-error-on-bad-sysctl-tables.patch +sysctl-update-sysctl_check_table.patch +sysct-mqueue-remove-the-binary-sysctl-numbers.patch +sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch +sysctl-fix-neighbour-table-sysctls.patch +sysctl-ipv6-route-flushing-kill-binary-path.patch +sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch +sysctl-x86_64-remove-unnecessary-binary-paths.patch +sysctl-remove-broken-cdrom-binary-sysctls.patch +sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch +sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch

sysctl cleanups

+make-access-to-tasks-nsproxy-lighter.patch

nsproxy speedup

All 1215 patches:

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/patch-list

#1 lore raw

Re: 2.6.23-rc2-mm2: possible irq lock inversion dependency detected

Hello,

Have fun :)

=========================================================
[ INFO: possible irq lock inversion dependency detected ] 2.6.23-rc2-mm2 #1
---------------------------------------------------------
depscan.sh/5928 just changed the state of lock:
(_xmit_ETHER){-+..}, at: [<c03cb669>] dev_watchdog+0x17/0xcc
but this lock took another, soft-irq-unsafe lock in the past:
(&tp->lock){--..}

and interrupts could create inverse lock ordering between them.

other info that might help us debug this:
no locks held by depscan.sh/5928.

the first lock's dependencies:
-> (_xmit_ETHER){-+..} ops: 27 {
initial-use at:

                        [<c0138ea9>] __lock_acquire+0x217/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c045282a>] _spin_lock_bh+0x3a/0x47
                        [<c03bc0a6>] dev_set_rx_mode+0x14/0x3b
                        [<c03bc5af>] dev_change_flags+0x68/0x190
                        [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                        [<c03fd442>] inet_ioctl+0x56/0x71
                        [<c03b152a>] sock_ioctl+0xa5/0x1d4
                        [<c0178a52>] do_ioctl+0x22/0x71
                        [<c0178af6>] vfs_ioctl+0x55/0x29e
                        [<c0178d72>] sys_ioctl+0x33/0x69
                        [<c01041da>] sysenter_past_esp+0x5f/0x99
                        [<ffffffff>] 0xffffffff
   in-softirq-W at:
                        [<c0139384>] __lock_acquire+0x6f2/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c04527e3>] _spin_lock+0x35/0x42
                        [<c03cb669>] dev_watchdog+0x17/0xcc
                        [<c01224b7>] run_timer_softirq+0x14b/0x1a9
                        [<c011ecc2>] __do_softirq+0x5b/0xb2
                        [<c011ed66>] do_softirq+0x4d/0x4f
                        [<c011f04b>] irq_exit+0x48/0x4a
                        [<c01058f8>] do_IRQ+0x98/0xd0
                        [<c010444e>] common_interrupt+0x2e/0x34
                        [<ffffffff>] 0xffffffff
   hardirq-on-W at:
                        [<c01393d0>] __lock_acquire+0x73e/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c045282a>] _spin_lock_bh+0x3a/0x47
                        [<c03bc0a6>] dev_set_rx_mode+0x14/0x3b
                        [<c03bc5af>] dev_change_flags+0x68/0x190
                        [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                        [<c03fd442>] inet_ioctl+0x56/0x71
                        [<c03b152a>] sock_ioctl+0xa5/0x1d4
                        [<c0178a52>] do_ioctl+0x22/0x71
                        [<c0178af6>] vfs_ioctl+0x55/0x29e
                        [<c0178d72>] sys_ioctl+0x33/0x69
                        [<c01041da>] sysenter_past_esp+0x5f/0x99
                        [<ffffffff>] 0xffffffff
 }
 ... key      at: [<c087e9e8>] netdev_xmit_lock_key+0x8/0x1c0
 -> (&tp->lock){--..} ops: 44 {
    initial-use  at:
                          [<c0138ea9>] __lock_acquire+0x217/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c04527e3>] _spin_lock+0x35/0x42
                          [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                          [<c0148b92>] request_irq+0xba/0x108
                          [<de84e52d>] rtl8139_open+0x2f/0x1e2 [8139too]
                          [<c03be80d>] dev_open+0x37/0x76
                          [<c03bc5d5>] dev_change_flags+0x8e/0x190
                          [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                          [<c03fd442>] inet_ioctl+0x56/0x71
                          [<c03b152a>] sock_ioctl+0xa5/0x1d4
                          [<c0178a52>] do_ioctl+0x22/0x71
                          [<c0178af6>] vfs_ioctl+0x55/0x29e
                          [<c0178d72>] sys_ioctl+0x33/0x69
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
    softirq-on-W at:
                          [<c01393f9>] __lock_acquire+0x767/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c04527e3>] _spin_lock+0x35/0x42
                          [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                          [<c01487ed>] free_irq+0x11b/0x146
                          [<de84ec90>] rtl8139_close+0x8a/0x14a [8139too]
                          [<c03bd5d3>] dev_close+0x57/0x74
                          [<c03bc5d5>] dev_change_flags+0x8e/0x190
                          [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                          [<c03fd442>] inet_ioctl+0x56/0x71
                          [<c03b152a>] sock_ioctl+0xa5/0x1d4
                          [<c0178a52>] do_ioctl+0x22/0x71
                          [<c0178af6>] vfs_ioctl+0x55/0x29e
                          [<c0178d72>] sys_ioctl+0x33/0x69
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
    hardirq-on-W at:
                          [<c01393d0>] __lock_acquire+0x73e/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c04527e3>] _spin_lock+0x35/0x42
                          [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                          [<c01487ed>] free_irq+0x11b/0x146
                          [<de84ec90>] rtl8139_close+0x8a/0x14a [8139too]
                          [<c03bd5d3>] dev_close+0x57/0x74
                          [<c03bc5d5>] dev_change_flags+0x8e/0x190
                          [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                          [<c03fd442>] inet_ioctl+0x56/0x71
                          [<c03b152a>] sock_ioctl+0xa5/0x1d4
                          [<c0178a52>] do_ioctl+0x22/0x71
                          [<c0178af6>] vfs_ioctl+0x55/0x29e
                          [<c0178d72>] sys_ioctl+0x33/0x69
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
  }
  ... key      at: [<de852190>] __key.19796+0x0/0xffffd3c9 [8139too]
 ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<de84d275>] rtl8139_set_rx_mode+0x1e/0x166 [8139too]
   [<c03bbe72>] __dev_set_rx_mode+0x24/0x85
   [<c03bc0b8>] dev_set_rx_mode+0x26/0x3b
   [<c03be830>] dev_open+0x5a/0x76
   [<c03bc5d5>] dev_change_flags+0x8e/0x190
   [<c03fcb5c>] devinet_ioctl+0x4af/0x652
   [<c03fd442>] inet_ioctl+0x56/0x71
   [<c03b152a>] sock_ioctl+0xa5/0x1d4
   [<c0178a52>] do_ioctl+0x22/0x71
   [<c0178af6>] vfs_ioctl+0x55/0x29e
   [<c0178d72>] sys_ioctl+0x33/0x69
   [<c01041da>] sysenter_past_esp+0x5f/0x99
   [<ffffffff>] 0xffffffff
 -> (&priv->lock){++..} ops: 113 {
    initial-use  at:
                          [<c0138ea9>] __lock_acquire+0x217/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c04529cc>] _spin_lock_irq+0x3b/0x48
                          [<ded03256>] orinoco_init+0x8f5/0xbbd [orinoco]
                          [<c03bdbde>] register_netdevice+0x13a/0x3f8
                          [<c03bdece>] register_netdev+0x32/0x3f
                          [<ded2c4bb>] orinoco_cs_probe+0x368/0x3df [orinoco_cs]
                          [<ded378d9>] pcmcia_device_probe+0xc9/0x14c [pcmcia]
                          [<c02f324f>] driver_probe_device+0xa6/0x198
                          [<c02f3492>] __driver_attach+0xa2/0xa4
                          [<c02f271a>] bus_for_each_dev+0x43/0x61
                          [<c02f30d1>] driver_attach+0x19/0x1b
                          [<c02f2a89>] bus_add_driver+0x7e/0x1a5
                          [<c02f363f>] driver_register+0x45/0x75
                          [<ded38560>] pcmcia_register_driver+0xdb/0x12f [pcmcia]
                          [<de84b024>] 0xde84b024
                          [<c0140a47>] sys_init_module+0xc4/0x1622
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
    in-hardirq-W at:
                          [<c01395db>] __lock_acquire+0x949/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                          [<ded03bb4>] orinoco_interrupt+0x3f/0x1219 [orinoco]
                          [<c014814d>] handle_IRQ_event+0x28/0x59
                          [<c0149a1a>] handle_level_irq+0xad/0x10b
                          [<c01058f3>] do_IRQ+0x93/0xd0
                          [<c010444e>] common_interrupt+0x2e/0x34
                          [<c011ed66>] do_softirq+0x4d/0x4f
                          [<c011f04b>] irq_exit+0x48/0x4a
                          [<c01058f8>] do_IRQ+0x98/0xd0
                          [<c010444e>] common_interrupt+0x2e/0x34
                          [<ded06a99>] orinoco_get_wireless_stats+0xeb/0x140 [orinoco]
                          [<c042b2ba>] get_wireless_stats+0x1a/0x21
                          [<c042bf69>] wireless_seq_show+0x20/0x143
                          [<c0187357>] seq_read+0x1af/0x2b8
                          [<c01a1ed2>] proc_reg_read+0x57/0x78
                          [<c016d781>] vfs_read+0xaa/0x147
                          [<c016dba6>] sys_read+0x3d/0x7b
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
    in-softirq-W at:
                          [<c0139384>] __lock_acquire+0x6f2/0x11ac
                          [<c0139ed7>] lock_acquire+0x99/0xb2
                          [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                          [<ded03bb4>] orinoco_interrupt+0x3f/0x1219 [orinoco]
                          [<c014814d>] handle_IRQ_event+0x28/0x59
                          [<c0149a1a>] handle_level_irq+0xad/0x10b
                          [<c01058f3>] do_IRQ+0x93/0xd0
                          [<c010444e>] common_interrupt+0x2e/0x34
                          [<c011ed66>] do_softirq+0x4d/0x4f
                          [<c011f04b>] irq_exit+0x48/0x4a
                          [<c01058f8>] do_IRQ+0x98/0xd0
                          [<c010444e>] common_interrupt+0x2e/0x34
                          [<ded06a99>] orinoco_get_wireless_stats+0xeb/0x140 [orinoco]
                          [<c042b2ba>] get_wireless_stats+0x1a/0x21
                          [<c042bf69>] wireless_seq_show+0x20/0x143
                          [<c0187357>] seq_read+0x1af/0x2b8
                          [<c01a1ed2>] proc_reg_read+0x57/0x78
                          [<c016d781>] vfs_read+0xaa/0x147
                          [<c016dba6>] sys_read+0x3d/0x7b
                          [<c01041da>] sysenter_past_esp+0x5f/0x99
                          [<ffffffff>] 0xffffffff
  }
  ... key      at: [<ded0a298>] __key.20430+0x0/0xffffc9cd [orinoco]
  -> (lweventlist_lock){+...} ops: 8 {
     initial-use  at:
                            [<c0138ea9>] __lock_acquire+0x217/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c03c78db>] linkwatch_add_event+0x10/0x31
                            [<c03c79ba>] linkwatch_fire_event+0x35/0x37
                            [<c03cb36a>] netif_carrier_off+0x19/0x20
                            [<ded023b5>] alloc_orinocodev+0x181/0x19c [orinoco]
                            [<ded2c170>] orinoco_cs_probe+0x1d/0x3df [orinoco_cs]
                            [<ded378d9>] pcmcia_device_probe+0xc9/0x14c [pcmcia]
                            [<c02f324f>] driver_probe_device+0xa6/0x198
                            [<c02f3492>] __driver_attach+0xa2/0xa4
                            [<c02f271a>] bus_for_each_dev+0x43/0x61
                            [<c02f30d1>] driver_attach+0x19/0x1b
                            [<c02f2a89>] bus_add_driver+0x7e/0x1a5
                            [<c02f363f>] driver_register+0x45/0x75
                            [<ded38560>] pcmcia_register_driver+0xdb/0x12f [pcmcia]
                            [<de84b024>] 0xde84b024
                            [<c0140a47>] sys_init_module+0xc4/0x1622
                            [<c01041da>] sysenter_past_esp+0x5f/0x99
                            [<ffffffff>] 0xffffffff
     in-hardirq-W at:
                            [<c01395db>] __lock_acquire+0x949/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c03c78db>] linkwatch_add_event+0x10/0x31
                            [<c03c79ba>] linkwatch_fire_event+0x35/0x37
                            [<c03cb39a>] netif_carrier_on+0x29/0x2b
                            [<ded04bdc>] orinoco_interrupt+0x1067/0x1219 [orinoco]
                            [<c014814d>] handle_IRQ_event+0x28/0x59
                            [<c0149a1a>] handle_level_irq+0xad/0x10b
                            [<c01058f3>] do_IRQ+0x93/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c03706cb>] cpuidle_idle_call+0x74/0x99
                            [<c01025e4>] cpu_idle+0x87/0x89
                            [<c044f214>] rest_init+0x60/0x62
                            [<c05fcad5>] start_kernel+0x23a/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
   }
   ... key      at: [<c05e4990>] lweventlist_lock+0x10/0x20
  ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<c03c78db>] linkwatch_add_event+0x10/0x31
   [<c03c79ba>] linkwatch_fire_event+0x35/0x37
   [<c03cb39a>] netif_carrier_on+0x29/0x2b
   [<ded04bdc>] orinoco_interrupt+0x1067/0x1219 [orinoco]
   [<c014814d>] handle_IRQ_event+0x28/0x59
   [<c0149a1a>] handle_level_irq+0xad/0x10b
   [<c01058f3>] do_IRQ+0x93/0xd0
   [<c010444e>] common_interrupt+0x2e/0x34
   [<c03706cb>] cpuidle_idle_call+0x74/0x99
   [<c01025e4>] cpu_idle+0x87/0x89
   [<c044f214>] rest_init+0x60/0x62
   [<c05fcad5>] start_kernel+0x23a/0x2c5
   [<00000000>] 0x0
   [<ffffffff>] 0xffffffff
  -> (&cwq->lock){++..} ops: 4593 {
     initial-use  at:
                            [<c0138ea9>] __lock_acquire+0x217/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c0129002>] __queue_work+0xf/0x2d
                            [<c012909f>] queue_work+0x57/0x90
                            [<c0128714>] call_usermodehelper_exec+0xce/0xe1
                            [<c0265385>] kobject_uevent_env+0x34d/0x449
                            [<c026548b>] kobject_uevent+0xa/0xf
                            [<c0264b69>] kset_register+0x32/0x38
                            [<c0264b77>] subsystem_register+0x8/0xa
                            [<c02f2c9a>] bus_register+0x65/0x1f3
                            [<c0611db6>] platform_bus_init+0x23/0x38
                            [<c0611e0c>] driver_init+0x1c/0x31
                            [<c05fc68d>] kernel_init+0x5d/0x26b
                            [<c010454b>] kernel_thread_helper+0x7/0x1c
                            [<ffffffff>] 0xffffffff
     in-hardirq-W at:
                            [<c01395db>] __lock_acquire+0x949/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c0129002>] __queue_work+0xf/0x2d
                            [<c012909f>] queue_work+0x57/0x90
                            [<c029239a>] acpi_os_execute+0xae/0xcb
                            [<c02aa226>] acpi_ec_gpe_handler+0x4d/0x5e
                            [<c0297f51>] acpi_ev_gpe_dispatch+0x4b/0x115
                            [<c0298253>] acpi_ev_gpe_detect+0x9a/0xe1
                            [<c0296989>] acpi_ev_sci_xrupt_handler+0x15/0x1d
                            [<c0291aae>] acpi_irq+0xe/0x18
                            [<c014814d>] handle_IRQ_event+0x28/0x59
                            [<c0149a1a>] handle_level_irq+0xad/0x10b
                            [<c01058f3>] do_IRQ+0x93/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c01025e4>] cpu_idle+0x87/0x89
                            [<c044f214>] rest_init+0x60/0x62
                            [<c05fcad5>] start_kernel+0x23a/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
     in-softirq-W at:
                            [<c0139384>] __lock_acquire+0x6f2/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c0129002>] __queue_work+0xf/0x2d
                            [<c0129044>] delayed_work_timer_fn+0x24/0x28
                            [<c01224b7>] run_timer_softirq+0x14b/0x1a9
                            [<c011ecc2>] __do_softirq+0x5b/0xb2
                            [<c011ed66>] do_softirq+0x4d/0x4f
                            [<c011f04b>] irq_exit+0x48/0x4a
                            [<c01058f8>] do_IRQ+0x98/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c0128b00>] run_workqueue+0xe8/0x1f3
                            [<c0129648>] worker_thread+0x9a/0xf2
                            [<c012c04e>] kthread+0x36/0x58
                            [<c010454b>] kernel_thread_helper+0x7/0x1c
                            [<ffffffff>] 0xffffffff
   }
   ... key      at: [<c0657ae8>] __key.11148+0x0/0x8
   -> (&q->lock){++..} ops: 74830 {
      initial-use  at:
                              [<c0138ea9>] __lock_acquire+0x217/0x11ac
                              [<c0139ed7>] lock_acquire+0x99/0xb2
                              [<c04529cc>] _spin_lock_irq+0x3b/0x48
                              [<c044fcf5>] wait_for_completion+0x24/0xb5
                              [<c012c1d1>] kthread_create+0x69/0xa8
                              [<c0606fcc>] cpu_callback+0x48/0xa3
                              [<c0607043>] spawn_ksoftirqd+0x1c/0x4e
                              [<c05fc66c>] kernel_init+0x3c/0x26b
                              [<c010454b>] kernel_thread_helper+0x7/0x1c
                              [<ffffffff>] 0xffffffff
      in-hardirq-W at:
                              [<c01395db>] __lock_acquire+0x949/0x11ac
                              [<c0139ed7>] lock_acquire+0x99/0xb2
                              [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                              [<c0113d3b>] __wake_up+0x15/0x42
                              [<c02aa1ff>] acpi_ec_gpe_handler+0x26/0x5e
                              [<c0297f51>] acpi_ev_gpe_dispatch+0x4b/0x115
                              [<c0298253>] acpi_ev_gpe_detect+0x9a/0xe1
                              [<c0296989>] acpi_ev_sci_xrupt_handler+0x15/0x1d
                              [<c0291aae>] acpi_irq+0xe/0x18
                              [<c014814d>] handle_IRQ_event+0x28/0x59
                              [<c0149a1a>] handle_level_irq+0xad/0x10b
                              [<c01058f3>] do_IRQ+0x93/0xd0
                              [<c010444e>] common_interrupt+0x2e/0x34
                              [<c01025e4>] cpu_idle+0x87/0x89
                              [<c044f214>] rest_init+0x60/0x62
                              [<c05fcad5>] start_kernel+0x23a/0x2c5
                              [<00000000>] 0x0
                              [<ffffffff>] 0xffffffff
      in-softirq-W at:
                              [<c0139384>] __lock_acquire+0x6f2/0x11ac
                              [<c0139ed7>] lock_acquire+0x99/0xb2
                              [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                              [<c0113c7c>] complete+0x15/0x4b
                              [<c0129ebe>] wakeme_after_rcu+0xb/0xd
                              [<c012a013>] __rcu_process_callbacks+0x69/0x1cf
                              [<c012a18b>] rcu_process_callbacks+0x12/0x23
                              [<c011eda3>] tasklet_action+0x3b/0x7b
                              [<c011ecc2>] __do_softirq+0x5b/0xb2
                              [<c011ed66>] do_softirq+0x4d/0x4f
                              [<c011f04b>] irq_exit+0x48/0x4a
                              [<c01058f8>] do_IRQ+0x98/0xd0
                              [<c010444e>] common_interrupt+0x2e/0x34
                              [<c01025e4>] cpu_idle+0x87/0x89
                              [<c044f214>] rest_init+0x60/0x62
                              [<c05fcad5>] start_kernel+0x23a/0x2c5
                              [<00000000>] 0x0
                              [<ffffffff>] 0xffffffff
    }
    ... key      at: [<c0657f30>] __key.11466+0x0/0x8
    -> (&rq->rq_lock_key){++..} ops: 216798 {
       initial-use  at:
                                [<c0138ea9>] __lock_acquire+0x217/0x11ac
                                [<c0139ed7>] lock_acquire+0x99/0xb2
                                [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                                [<c060664a>] init_idle+0x40/0x6d
                                [<c06067e0>] sched_init+0x169/0x17c
                                [<c05fc970>] start_kernel+0xd5/0x2c5
                                [<00000000>] 0x0
                                [<ffffffff>] 0xffffffff
       in-hardirq-W at:
                                [<c01395db>] __lock_acquire+0x949/0x11ac
                                [<c0139ed7>] lock_acquire+0x99/0xb2
                                [<c04527e3>] _spin_lock+0x35/0x42
                                [<c01157f3>] scheduler_tick+0x20/0x192
                                [<c0122c31>] update_process_times+0x43/0x62
                                [<c0134325>] tick_periodic+0x24/0x75
                                [<c013438e>] tick_handle_periodic+0x18/0x7a
                                [<c01064ae>] timer_interrupt+0xe/0x15
                                [<c014814d>] handle_IRQ_event+0x28/0x59
                                [<c0149a1a>] handle_level_irq+0xad/0x10b
                                [<c01058f3>] do_IRQ+0x93/0xd0
                                [<c010444e>] common_interrupt+0x2e/0x34
                                [<c014890a>] setup_irq+0xf2/0x20d
                                [<c060656f>] time_init_hook+0x19/0x1b
                                [<c05ffcc8>] hpet_time_init+0xd/0x15
                                [<c05fca70>] start_kernel+0x1d5/0x2c5
                                [<00000000>] 0x0
                                [<ffffffff>] 0xffffffff
       in-softirq-W at:
                                [<c0139384>] __lock_acquire+0x6f2/0x11ac
                                [<c0139ed7>] lock_acquire+0x99/0xb2
                                [<c04527e3>] _spin_lock+0x35/0x42
                                [<c0114ec2>] task_rq_lock+0x28/0x40
                                [<c011504c>] try_to_wake_up+0x18/0x92
                                [<c01150d1>] default_wake_function+0xb/0xd
                                [<c011284b>] __wake_up_common+0x39/0x59
                                [<c0113ca1>] complete+0x3a/0x4b
                                [<c0129ebe>] wakeme_after_rcu+0xb/0xd
                                [<c012a013>] __rcu_process_callbacks+0x69/0x1cf
                                [<c012a18b>] rcu_process_callbacks+0x12/0x23
                                [<c011eda3>] tasklet_action+0x3b/0x7b
                                [<c011ecc2>] __do_softirq+0x5b/0xb2
                                [<c011ed66>] do_softirq+0x4d/0x4f
                                [<c011f04b>] irq_exit+0x48/0x4a
                                [<c01058f8>] do_IRQ+0x98/0xd0
                                [<c010444e>] common_interrupt+0x2e/0x34
                                [<c01025e4>] cpu_idle+0x87/0x89
                                [<c044f214>] rest_init+0x60/0x62
                                [<c05fcad5>] start_kernel+0x23a/0x2c5
                                [<00000000>] 0x0
                                [<ffffffff>] 0xffffffff
     }
     ... key      at: [<c0635d28>] per_cpu__runqueues+0x468/0x470
    ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c04527e3>] _spin_lock+0x35/0x42
   [<c0114ec2>] task_rq_lock+0x28/0x40
   [<c011504c>] try_to_wake_up+0x18/0x92
   [<c01150d1>] default_wake_function+0xb/0xd
   [<c011284b>] __wake_up_common+0x39/0x59
   [<c0113ca1>] complete+0x3a/0x4b
   [<c012c037>] kthread+0x1f/0x58
   [<c010454b>] kernel_thread_helper+0x7/0x1c
   [<ffffffff>] 0xffffffff

... acquired at:

   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<c0113d3b>] __wake_up+0x15/0x42
   [<c0128c6b>] insert_work+0x60/0x75
   [<c0129012>] __queue_work+0x1f/0x2d
   [<c012909f>] queue_work+0x57/0x90
   [<c0128714>] call_usermodehelper_exec+0xce/0xe1
   [<c0265385>] kobject_uevent_env+0x34d/0x449
   [<c026548b>] kobject_uevent+0xa/0xf
   [<c0264b69>] kset_register+0x32/0x38
   [<c0264b77>] subsystem_register+0x8/0xa
   [<c02f2c9a>] bus_register+0x65/0x1f3
   [<c0611db6>] platform_bus_init+0x23/0x38
   [<c0611e0c>] driver_init+0x1c/0x31
   [<c05fc68d>] kernel_init+0x5d/0x26b
   [<c010454b>] kernel_thread_helper+0x7/0x1c
   [<ffffffff>] 0xffffffff

... acquired at:

   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<c0129002>] __queue_work+0xf/0x2d
   [<c012909f>] queue_work+0x57/0x90
   [<c01294af>] queue_delayed_work+0x27/0x48
   [<c01294f2>] schedule_delayed_work+0x22/0x26
   [<c03c793c>] linkwatch_schedule_work+0x40/0x89
   [<c03c79a9>] linkwatch_fire_event+0x24/0x37
   [<c03cb39a>] netif_carrier_on+0x29/0x2b
   [<ded04bdc>] orinoco_interrupt+0x1067/0x1219 [orinoco]
   [<c014814d>] handle_IRQ_event+0x28/0x59
   [<c0149a1a>] handle_level_irq+0xad/0x10b
   [<c01058f3>] do_IRQ+0x93/0xd0
   [<c010444e>] common_interrupt+0x2e/0x34
   [<c03706cb>] cpuidle_idle_call+0x74/0x99
   [<c01025e4>] cpu_idle+0x87/0x89
   [<c044f214>] rest_init+0x60/0x62
   [<c05fcad5>] start_kernel+0x23a/0x2c5
   [<00000000>] 0x0
   [<ffffffff>] 0xffffffff
  -> (base_lock_keys + cpu){++..} ops: 69219 {
     initial-use  at:
                            [<c0138ea9>] __lock_acquire+0x217/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c01229f6>] lock_timer_base+0x41/0x66
                            [<c0122ab8>] __mod_timer+0x3b/0xc5
                            [<c0122bea>] mod_timer+0x47/0x4b
                            [<c0611091>] con_init+0x24b/0x27e
                            [<c061075a>] console_init+0x20/0x2e
                            [<c05fca30>] start_kernel+0x195/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
     in-hardirq-W at:
                            [<c01395db>] __lock_acquire+0x949/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c01229f6>] lock_timer_base+0x41/0x66
                            [<c0122a47>] del_timer+0x2c/0x62
                            [<c0302a8b>] ide_intr+0x72/0x1f0
                            [<c014814d>] handle_IRQ_event+0x28/0x59
                            [<c0149a1a>] handle_level_irq+0xad/0x10b
                            [<c01058f3>] do_IRQ+0x93/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c01025e4>] cpu_idle+0x87/0x89
                            [<c044f214>] rest_init+0x60/0x62
                            [<c05fcad5>] start_kernel+0x23a/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
     in-softirq-W at:
                            [<c0139384>] __lock_acquire+0x6f2/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c04529cc>] _spin_lock_irq+0x3b/0x48
                            [<c0122395>] run_timer_softirq+0x29/0x1a9
                            [<c011ecc2>] __do_softirq+0x5b/0xb2
                            [<c011ed66>] do_softirq+0x4d/0x4f
                            [<c011f04b>] irq_exit+0x48/0x4a
                            [<c01058f8>] do_IRQ+0x98/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c014890a>] setup_irq+0xf2/0x20d
                            [<c060656f>] time_init_hook+0x19/0x1b
                            [<c05ffcc8>] hpet_time_init+0xd/0x15
                            [<c05fca70>] start_kernel+0x1d5/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
   }
   ... key      at: [<c0657a96>] base_lock_keys+0x0/0xa
  ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<c01229f6>] lock_timer_base+0x41/0x66
   [<c0122ab8>] __mod_timer+0x3b/0xc5
   [<c0122bea>] mod_timer+0x47/0x4b
   [<c03cae67>] __netdev_watchdog_up+0x37/0x50
   [<c03cb390>] netif_carrier_on+0x1f/0x2b
   [<ded04bdc>] orinoco_interrupt+0x1067/0x1219 [orinoco]
   [<c014814d>] handle_IRQ_event+0x28/0x59
   [<c0149a1a>] handle_level_irq+0xad/0x10b
   [<c01058f3>] do_IRQ+0x93/0xd0
   [<c010444e>] common_interrupt+0x2e/0x34
   [<c03706cb>] cpuidle_idle_call+0x74/0x99
   [<c01025e4>] cpu_idle+0x87/0x89
   [<c044f214>] rest_init+0x60/0x62
   [<c05fcad5>] start_kernel+0x23a/0x2c5
   [<00000000>] 0x0
   [<ffffffff>] 0xffffffff

  -> (&list->lock#2){.+..} ops: 12 {
     initial-use  at:
                            [<c0138ea9>] __lock_acquire+0x217/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c03b70bb>] skb_queue_tail+0x14/0x33
                            [<c042b67b>] wireless_send_event+0x348/0x369
                            [<c042b9b9>] ioctl_standard_call+0x1b2/0x34d
                            [<c042beae>] wext_handle_ioctl+0x35a/0x3e4
                            [<c03be765>] dev_ioctl+0x31e/0x325
                            [<c03b153c>] sock_ioctl+0xb7/0x1d4
                            [<c0178a52>] do_ioctl+0x22/0x71
                            [<c0178af6>] vfs_ioctl+0x55/0x29e
                            [<c0178d72>] sys_ioctl+0x33/0x69
                            [<c01041da>] sysenter_past_esp+0x5f/0x99
                            [<ffffffff>] 0xffffffff
     in-softirq-W at:
                            [<c0139384>] __lock_acquire+0x6f2/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c03b716c>] skb_dequeue+0x12/0x50
                            [<c042b32d>] wireless_nlevent_process+0x2d/0x33
                            [<c011eda3>] tasklet_action+0x3b/0x7b
                            [<c011ecc2>] __do_softirq+0x5b/0xb2
                            [<c011ed66>] do_softirq+0x4d/0x4f
                            [<c011f04b>] irq_exit+0x48/0x4a
                            [<c01058f8>] do_IRQ+0x98/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<ded028e3>] orinoco_ioctl_commit+0x8e/0x10c [orinoco]
                            [<c042b2f0>] call_commit_handler+0x2f/0x3f
                            [<c042b9d2>] ioctl_standard_call+0x1cb/0x34d
                            [<c042beae>] wext_handle_ioctl+0x35a/0x3e4
                            [<c03be765>] dev_ioctl+0x31e/0x325
                            [<c03b153c>] sock_ioctl+0xb7/0x1d4
                            [<c0178a52>] do_ioctl+0x22/0x71
                            [<c0178af6>] vfs_ioctl+0x55/0x29e
                            [<c0178d72>] sys_ioctl+0x33/0x69
                            [<c01041da>] sysenter_past_esp+0x5f/0x99
                            [<ffffffff>] 0xffffffff
   }
   ... key      at: [<c0884a80>] __key.13323+0x0/0x20
  ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<c03b70bb>] skb_queue_tail+0x14/0x33
   [<c042b67b>] wireless_send_event+0x348/0x369
   [<ded03b69>] orinoco_send_wevents+0x9a/0xa6 [orinoco]
   [<c0128b28>] run_workqueue+0x110/0x1f3
   [<c0129648>] worker_thread+0x9a/0xf2
   [<c012c04e>] kthread+0x36/0x58
   [<c010454b>] kernel_thread_helper+0x7/0x1c
   [<ffffffff>] 0xffffffff

  -> (&rq->rq_lock_key){++..} ops: 216798 {
     initial-use  at:
                            [<c0138ea9>] __lock_acquire+0x217/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
                            [<c060664a>] init_idle+0x40/0x6d
                            [<c06067e0>] sched_init+0x169/0x17c
                            [<c05fc970>] start_kernel+0xd5/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
     in-hardirq-W at:
                            [<c01395db>] __lock_acquire+0x949/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c04527e3>] _spin_lock+0x35/0x42
                            [<c01157f3>] scheduler_tick+0x20/0x192
                            [<c0122c31>] update_process_times+0x43/0x62
                            [<c0134325>] tick_periodic+0x24/0x75
                            [<c013438e>] tick_handle_periodic+0x18/0x7a
                            [<c01064ae>] timer_interrupt+0xe/0x15
                            [<c014814d>] handle_IRQ_event+0x28/0x59
                            [<c0149a1a>] handle_level_irq+0xad/0x10b
                            [<c01058f3>] do_IRQ+0x93/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c014890a>] setup_irq+0xf2/0x20d
                            [<c060656f>] time_init_hook+0x19/0x1b
                            [<c05ffcc8>] hpet_time_init+0xd/0x15
                            [<c05fca70>] start_kernel+0x1d5/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
     in-softirq-W at:
                            [<c0139384>] __lock_acquire+0x6f2/0x11ac
                            [<c0139ed7>] lock_acquire+0x99/0xb2
                            [<c04527e3>] _spin_lock+0x35/0x42
                            [<c0114ec2>] task_rq_lock+0x28/0x40
                            [<c011504c>] try_to_wake_up+0x18/0x92
                            [<c01150d1>] default_wake_function+0xb/0xd
                            [<c011284b>] __wake_up_common+0x39/0x59
                            [<c0113ca1>] complete+0x3a/0x4b
                            [<c0129ebe>] wakeme_after_rcu+0xb/0xd
                            [<c012a013>] __rcu_process_callbacks+0x69/0x1cf
                            [<c012a18b>] rcu_process_callbacks+0x12/0x23
                            [<c011eda3>] tasklet_action+0x3b/0x7b
                            [<c011ecc2>] __do_softirq+0x5b/0xb2
                            [<c011ed66>] do_softirq+0x4d/0x4f
                            [<c011f04b>] irq_exit+0x48/0x4a
                            [<c01058f8>] do_IRQ+0x98/0xd0
                            [<c010444e>] common_interrupt+0x2e/0x34
                            [<c01025e4>] cpu_idle+0x87/0x89
                            [<c044f214>] rest_init+0x60/0x62
                            [<c05fcad5>] start_kernel+0x23a/0x2c5
                            [<00000000>] 0x0
                            [<ffffffff>] 0xffffffff
   }
   ... key      at: [<c0635d28>] per_cpu__runqueues+0x468/0x470
  ... acquired at:
   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c04527e3>] _spin_lock+0x35/0x42
   [<c0114ec2>] task_rq_lock+0x28/0x40
   [<c011504c>] try_to_wake_up+0x18/0x92
   [<c01150ee>] wake_up_process+0xf/0x11
   [<c011f5cc>] __tasklet_schedule+0x6d/0x6f
   [<c042b697>] wireless_send_event+0x364/0x369
   [<ded03b69>] orinoco_send_wevents+0x9a/0xa6 [orinoco]
   [<c0128b28>] run_workqueue+0x110/0x1f3
   [<c0129648>] worker_thread+0x9a/0xf2
   [<c012c04e>] kthread+0x36/0x58
   [<c010454b>] kernel_thread_helper+0x7/0x1c
   [<ffffffff>] 0xffffffff

... acquired at:

   [<c0139d2d>] __lock_acquire+0x109b/0x11ac
   [<c0139ed7>] lock_acquire+0x99/0xb2
   [<c0452a5f>] _spin_lock_irqsave+0x3e/0x4e
   [<ded03598>] orinoco_set_multicast_list+0x1b/0x5f [orinoco]
   [<c03bbe72>] __dev_set_rx_mode+0x24/0x85
   [<c03bc0b8>] dev_set_rx_mode+0x26/0x3b
   [<c03be830>] dev_open+0x5a/0x76
   [<c03bc5d5>] dev_change_flags+0x8e/0x190
   [<c03fcb5c>] devinet_ioctl+0x4af/0x652
   [<c03fd442>] inet_ioctl+0x56/0x71
   [<c03b152a>] sock_ioctl+0xa5/0x1d4
   [<c0178a52>] do_ioctl+0x22/0x71
   [<c0178af6>] vfs_ioctl+0x55/0x29e
   [<c0178d72>] sys_ioctl+0x33/0x69
   [<c01041da>] sysenter_past_esp+0x5f/0x99
   [<ffffffff>] 0xffffffff

the second lock's dependencies:
-> (&tp->lock){--..} ops: 44 {
initial-use at:

                        [<c0138ea9>] __lock_acquire+0x217/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c04527e3>] _spin_lock+0x35/0x42
                        [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                        [<c0148b92>] request_irq+0xba/0x108
                        [<de84e52d>] rtl8139_open+0x2f/0x1e2 [8139too]
                        [<c03be80d>] dev_open+0x37/0x76
                        [<c03bc5d5>] dev_change_flags+0x8e/0x190
                        [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                        [<c03fd442>] inet_ioctl+0x56/0x71
                        [<c03b152a>] sock_ioctl+0xa5/0x1d4
                        [<c0178a52>] do_ioctl+0x22/0x71
                        [<c0178af6>] vfs_ioctl+0x55/0x29e
                        [<c0178d72>] sys_ioctl+0x33/0x69
                        [<c01041da>] sysenter_past_esp+0x5f/0x99
                        [<ffffffff>] 0xffffffff
   softirq-on-W at:
                        [<c01393f9>] __lock_acquire+0x767/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c04527e3>] _spin_lock+0x35/0x42
                        [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                        [<c01487ed>] free_irq+0x11b/0x146
                        [<de84ec90>] rtl8139_close+0x8a/0x14a [8139too]
                        [<c03bd5d3>] dev_close+0x57/0x74
                        [<c03bc5d5>] dev_change_flags+0x8e/0x190
                        [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                        [<c03fd442>] inet_ioctl+0x56/0x71
                        [<c03b152a>] sock_ioctl+0xa5/0x1d4
                        [<c0178a52>] do_ioctl+0x22/0x71
                        [<c0178af6>] vfs_ioctl+0x55/0x29e
                        [<c0178d72>] sys_ioctl+0x33/0x69
                        [<c01041da>] sysenter_past_esp+0x5f/0x99
                        [<ffffffff>] 0xffffffff
   hardirq-on-W at:
                        [<c01393d0>] __lock_acquire+0x73e/0x11ac
                        [<c0139ed7>] lock_acquire+0x99/0xb2
                        [<c04527e3>] _spin_lock+0x35/0x42
                        [<de84d6e2>] rtl8139_interrupt+0x27/0x469 [8139too]
                        [<c01487ed>] free_irq+0x11b/0x146
                        [<de84ec90>] rtl8139_close+0x8a/0x14a [8139too]
                        [<c03bd5d3>] dev_close+0x57/0x74
                        [<c03bc5d5>] dev_change_flags+0x8e/0x190
                        [<c03fcb5c>] devinet_ioctl+0x4af/0x652
                        [<c03fd442>] inet_ioctl+0x56/0x71
                        [<c03b152a>] sock_ioctl+0xa5/0x1d4
                        [<c0178a52>] do_ioctl+0x22/0x71
                        [<c0178af6>] vfs_ioctl+0x55/0x29e
                        [<c0178d72>] sys_ioctl+0x33/0x69
                        [<c01041da>] sysenter_past_esp+0x5f/0x99
                        [<ffffffff>] 0xffffffff
 }
 ... key      at: [<de852190>] __key.19796+0x0/0xffffd3c9 [8139too]

stack backtrace:
 [<c0104899>] show_trace_log_lvl+0x1a/0x30
 [<c0105296>] show_trace+0x12/0x14
 [<c01053fe>] dump_stack+0x15/0x17
 [<c0137462>] print_irq_inversion_bug+0x101/0x123
 [<c0137db1>] check_usage_forwards+0x3e/0x45
 [<c0137f67>] mark_lock+0x1af/0x70c
 [<c0139384>] __lock_acquire+0x6f2/0x11ac
 [<c0139ed7>] lock_acquire+0x99/0xb2
 [<c04527e3>] _spin_lock+0x35/0x42
 [<c03cb669>] dev_watchdog+0x17/0xcc
 [<c01224b7>] run_timer_softirq+0x14b/0x1a9
 [<c011ecc2>] __do_softirq+0x5b/0xb2
 [<c011ed66>] do_softirq+0x4d/0x4f
 [<c011f04b>] irq_exit+0x48/0x4a
 [<c01058f8>] do_IRQ+0x98/0xd0
 [<c010444e>] common_interrupt+0x2e/0x34
 =======================

Clocksource tsc unstable (delta = 9372868714 ns)

Regards,

Mariusz

#2 lore raw
In reply to Andrew Morton

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

Regards
dave

author maintainer
#3 lore raw
Quoted 8 lines · On Fri, 10 Aug 2007 16:18:38 +0800 "Dave Young" <[email protected]>…

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

Quoted 8 lines

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

cc netdev

please send config

presumably nf_ct_helper_hsize is zero

I'd have thought that the same bug would be present in mainline - there's nothing in git-net.patch.

(hunts around, discovers that there's a net-2.6.24 tree now. Bah)

#4 lore raw
Quoted 22 lines · Andrew Morton
Quoted 8 lines · On Fri, 10 Aug 2007 16:18:38 +0800 "Dave Young" <[email protected]>…

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

Quoted 8 lines

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

cc netdev

Quoted 9 lines

please send config

presumably nf_ct_helper_hsize is zero

I'd have thought that the same bug would be present in mainline - there's nothing in git-net.patch.

(hunts around, discovers that there's a net-2.6.24 tree now. Bah)

MY config file for test:
#
# Automatically generated make config: don't edit # Linux kernel version: 2.6.23-rc2-mm2
# Fri Aug 10 16:24:32 2007
#
CONFIG_X86_32=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_NONIRQ_WAKEUP=y
CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
CONFIG_QUICKLIST=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_DMI=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=y
CONFIG_SWAP_PREFETCH=y
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=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_USER_NS=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_CONTAINERS=y
# CONFIG_CONTAINER_DEBUG is not set
# CONFIG_CONTAINER_NS is not set
# CONFIG_CONTAINER_CPUACCT is not set
CONFIG_CPUSETS=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
CONFIG_EMBEDDED=y
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=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_PROC_PAGE_MONITOR=y
CONFIG_PROC_KPAGEMAP=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_LBD=y
CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_LSF=y
CONFIG_BLK_DEV_BSG=y

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
# CONFIG_DEFAULT_AS is not set
# CONFIG_DEFAULT_DEADLINE is not set
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"

#
# Processor type and features
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_SMP=y
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
CONFIG_PARAVIRT=y
CONFIG_XEN=y
CONFIG_VMI=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 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
CONFIG_MPENTIUM4=y
# CONFIG_MCORE2 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_X86_GENERIC=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_XADD=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=4
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_NR_CPUS=2
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
CONFIG_PREEMPT_BKL=y
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_X86_MCE_P4THERMAL=y
CONFIG_VM86=y
CONFIG_TOSHIBA=y
CONFIG_I8K=y
CONFIG_X86_REBOOTFIXUPS=y
CONFIG_MICROCODE=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y

#
# Firmware Drivers
#
CONFIG_EDD=y
CONFIG_EFI_VARS=y
CONFIG_DELL_RBU=y
CONFIG_DCDBAS=y
CONFIG_DMIID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_3G_OPT is not set
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_2G_OPT is not set
# CONFIG_VMSPLIT_1G 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_ARCH_POPULATES_NODE_MAP=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_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_NR_QUICK=1
CONFIG_VIRT_TO_BUS=y
CONFIG_HIGHPTE=y
CONFIG_MATH_EMULATION=y
CONFIG_MTRR=y
CONFIG_EFI=y
CONFIG_IRQBALANCE=y
CONFIG_BOOT_IOREMAP=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_KEXEC=y
CONFIG_CRASH_DUMP=y
CONFIG_PHYSICAL_START=0x100000
CONFIG_RELOCATABLE=y
CONFIG_PHYSICAL_ALIGN=0x100000
CONFIG_HOTPLUG_CPU=y
CONFIG_COMPAT_VDSO=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not set
CONFIG_PM_SLEEP_SMP=y
CONFIG_PM_SLEEP=y
CONFIG_SUSPEND_SMP_POSSIBLE=y
CONFIG_SUSPEND=y
CONFIG_HIBERNATION_SMP_POSSIBLE=y
CONFIG_HIBERNATION=y
CONFIG_PM_STD_PARTITION=""
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_BAY=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_ASUS=y
CONFIG_ACPI_TOSHIBA=y
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_SBS=y
CONFIG_APM=y
CONFIG_APM_IGNORE_USER_SUSPEND=y
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_CPU_IDLE=y
CONFIG_APM_DISPLAY_BLANK=y
CONFIG_APM_ALLOW_INTS=y
CONFIG_APM_REAL_MODE_POWER_OFF=y

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_DEBUG is not set CONFIG_CPU_FREQ_STAT=y CONFIG_CPU_FREQ_STAT_DETAILS=y CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# 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=y CONFIG_CPU_FREQ_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_ONDEMAND=y CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

#
# CPUFreq processor drivers
#
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_X86_POWERNOW_K6=y
CONFIG_X86_POWERNOW_K7=y
CONFIG_X86_POWERNOW_K7_ACPI=y
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_POWERNOW_K8_ACPI=y
CONFIG_X86_GX_SUSPMOD=y
CONFIG_X86_SPEEDSTEP_CENTRINO=y
CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
CONFIG_X86_SPEEDSTEP_ICH=y
CONFIG_X86_SPEEDSTEP_SMI=y
CONFIG_X86_P4_CLOCKMOD=y
CONFIG_X86_CPUFREQ_NFORCE2=y
CONFIG_X86_LONGRUN=y
CONFIG_X86_LONGHAUL=y
CONFIG_X86_E_POWERSAVER=y

#

# shared options
#
CONFIG_X86_ACPI_CPUFREQ_PROC_INTF=y
CONFIG_X86_SPEEDSTEP_LIB=y
CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y

#
# CPU idle PM support
#
CONFIG_CPU_IDLE=y

#
# Governors
#
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y

#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=y
CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE=y
CONFIG_PCIEAER=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y
CONFIG_ISA_DMA_API=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
CONFIG_SCx200=y
CONFIG_SCx200HR_TIMER=y
CONFIG_K8_NB=y
# CONFIG_PCCARD is not set
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=y
CONFIG_HOTPLUG_PCI_COMPAQ=y
CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y
CONFIG_HOTPLUG_PCI_IBM=y
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=y
CONFIG_HOTPLUG_PCI_CPCI=y
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=y
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=y
CONFIG_HOTPLUG_PCI_SHPC=y

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_MISC=y

#
# Networking
#
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_NET_KEY=y
CONFIG_NET_KEY_MIGRATE=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
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=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IP_PNP_RARP=y
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE=y
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=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=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=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=y
CONFIG_TCP_CONG_HSTCP=y
CONFIG_TCP_CONG_HYBLA=y
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=y
# 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_IP_VS=y
# CONFIG_IP_VS_DEBUG is not set
CONFIG_IP_VS_TAB_BITS=12

#
# IPVS transport protocol load balancing support
#
CONFIG_IP_VS_PROTO_TCP=y
CONFIG_IP_VS_PROTO_UDP=y
CONFIG_IP_VS_PROTO_ESP=y
CONFIG_IP_VS_PROTO_AH=y

#
# IPVS scheduler
#
CONFIG_IP_VS_RR=y
CONFIG_IP_VS_WRR=y
CONFIG_IP_VS_LC=y
CONFIG_IP_VS_WLC=y
CONFIG_IP_VS_LBLC=y
CONFIG_IP_VS_LBLCR=y
CONFIG_IP_VS_DH=y
CONFIG_IP_VS_SH=y
CONFIG_IP_VS_SED=y
CONFIG_IP_VS_NQ=y

#
# IPVS application helper
#
CONFIG_IP_VS_FTP=y
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
CONFIG_INET6_IPCOMP=y
CONFIG_IPV6_MIP6=y
CONFIG_INET6_XFRM_TUNNEL=y
CONFIG_INET6_TUNNEL=y
CONFIG_INET6_XFRM_MODE_TRANSPORT=y
CONFIG_INET6_XFRM_MODE_TUNNEL=y
CONFIG_INET6_XFRM_MODE_BEET=y
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=y
CONFIG_IPV6_SIT=y
CONFIG_IPV6_TUNNEL=y
CONFIG_IPV6_MULTIPLE_TABLES=y
CONFIG_IPV6_SUBTREES=y
CONFIG_NETLABEL=y
CONFIG_NETWORK_SECMARK=y
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_BRIDGE_NETFILTER=y

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=y
CONFIG_NETFILTER_NETLINK_QUEUE=y
CONFIG_NETFILTER_NETLINK_LOG=y
CONFIG_NF_CONNTRACK_ENABLED=y
CONFIG_NF_CONNTRACK=y
CONFIG_NF_CT_ACCT=y
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_SECMARK=y
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CT_PROTO_GRE=y
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
CONFIG_NF_CONNTRACK_AMANDA=y
CONFIG_NF_CONNTRACK_FTP=y
CONFIG_NF_CONNTRACK_H323=y
CONFIG_NF_CONNTRACK_IRC=y
CONFIG_NF_CONNTRACK_NETBIOS_NS=y
CONFIG_NF_CONNTRACK_PPTP=y
CONFIG_NF_CONNTRACK_SANE=y
CONFIG_NF_CONNTRACK_SIP=y
CONFIG_NF_CONNTRACK_TFTP=y
CONFIG_NF_CT_NETLINK=y
CONFIG_NETFILTER_XTABLES=y
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
CONFIG_NETFILTER_XT_TARGET_DSCP=y
CONFIG_NETFILTER_XT_TARGET_MARK=y
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
CONFIG_NETFILTER_XT_TARGET_NFLOG=y
CONFIG_NETFILTER_XT_TARGET_NOTRACK=y
CONFIG_NETFILTER_XT_TARGET_TRACE=y
CONFIG_NETFILTER_XT_TARGET_SECMARK=y
CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=y
CONFIG_NETFILTER_XT_TARGET_TCPMSS=y
CONFIG_NETFILTER_XT_MATCH_COMMENT=y
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y
CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
CONFIG_NETFILTER_XT_MATCH_DCCP=y
CONFIG_NETFILTER_XT_MATCH_DSCP=y
CONFIG_NETFILTER_XT_MATCH_ESP=y
CONFIG_NETFILTER_XT_MATCH_HELPER=y
CONFIG_NETFILTER_XT_MATCH_LENGTH=y
CONFIG_NETFILTER_XT_MATCH_LIMIT=y
CONFIG_NETFILTER_XT_MATCH_MAC=y
CONFIG_NETFILTER_XT_MATCH_MARK=y
CONFIG_NETFILTER_XT_MATCH_POLICY=y
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
CONFIG_NETFILTER_XT_MATCH_QUOTA=y
CONFIG_NETFILTER_XT_MATCH_REALM=y
CONFIG_NETFILTER_XT_MATCH_SCTP=y
CONFIG_NETFILTER_XT_MATCH_STATE=y
CONFIG_NETFILTER_XT_MATCH_STATISTIC=y
CONFIG_NETFILTER_XT_MATCH_STRING=y
CONFIG_NETFILTER_XT_MATCH_TCPMSS=y
CONFIG_NETFILTER_XT_MATCH_U32=y
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y

#
# IP: Netfilter Configuration
#
CONFIG_NF_CONNTRACK_IPV4=y
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_IPRANGE=y
CONFIG_IP_NF_MATCH_TOS=y
CONFIG_IP_NF_MATCH_RECENT=y
CONFIG_IP_NF_MATCH_ECN=y
CONFIG_IP_NF_MATCH_AH=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_OWNER=y
CONFIG_IP_NF_MATCH_ADDRTYPE=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_LOG=y
CONFIG_IP_NF_TARGET_ULOG=y
CONFIG_NF_NAT=y
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_TARGET_NETMAP=y
CONFIG_IP_NF_TARGET_SAME=y
CONFIG_NF_NAT_SNMP_BASIC=y
CONFIG_NF_NAT_PROTO_GRE=y
CONFIG_NF_NAT_FTP=y
CONFIG_NF_NAT_IRC=y
CONFIG_NF_NAT_TFTP=y
CONFIG_NF_NAT_AMANDA=m
CONFIG_NF_NAT_PPTP=y
CONFIG_NF_NAT_H323=y
CONFIG_NF_NAT_SIP=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_TOS=y
CONFIG_IP_NF_TARGET_ECN=y
CONFIG_IP_NF_TARGET_TTL=y
CONFIG_IP_NF_TARGET_CLUSTERIP=y
CONFIG_IP_NF_RAW=y
CONFIG_IP_NF_ARPTABLES=y
CONFIG_IP_NF_ARPFILTER=y
CONFIG_IP_NF_ARP_MANGLE=y

#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#
CONFIG_NF_CONNTRACK_IPV6=y
CONFIG_IP6_NF_QUEUE=y
CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_MATCH_RT=y
CONFIG_IP6_NF_MATCH_OPTS=y
CONFIG_IP6_NF_MATCH_FRAG=y
CONFIG_IP6_NF_MATCH_HL=y
CONFIG_IP6_NF_MATCH_OWNER=y
CONFIG_IP6_NF_MATCH_IPV6HEADER=y
CONFIG_IP6_NF_MATCH_AH=y
CONFIG_IP6_NF_MATCH_MH=y
CONFIG_IP6_NF_MATCH_EUI64=y
CONFIG_IP6_NF_FILTER=y
CONFIG_IP6_NF_TARGET_LOG=y
CONFIG_IP6_NF_TARGET_REJECT=y
CONFIG_IP6_NF_MANGLE=y
CONFIG_IP6_NF_TARGET_HL=y
CONFIG_IP6_NF_RAW=y

#
# DECnet: Netfilter Configuration
#
CONFIG_DECNET_NF_GRABULATOR=y

#
# Bridge: Netfilter Configuration
#
CONFIG_BRIDGE_NF_EBTABLES=y
CONFIG_BRIDGE_EBT_BROUTE=y
CONFIG_BRIDGE_EBT_T_FILTER=y
CONFIG_BRIDGE_EBT_T_NAT=y
CONFIG_BRIDGE_EBT_802_3=y
CONFIG_BRIDGE_EBT_AMONG=y
CONFIG_BRIDGE_EBT_ARP=y
CONFIG_BRIDGE_EBT_IP=y
CONFIG_BRIDGE_EBT_LIMIT=y
CONFIG_BRIDGE_EBT_MARK=y
CONFIG_BRIDGE_EBT_PKTTYPE=y
CONFIG_BRIDGE_EBT_STP=y
CONFIG_BRIDGE_EBT_VLAN=y
CONFIG_BRIDGE_EBT_ARPREPLY=y
CONFIG_BRIDGE_EBT_DNAT=y
CONFIG_BRIDGE_EBT_MARK_T=y
CONFIG_BRIDGE_EBT_REDIRECT=y
CONFIG_BRIDGE_EBT_SNAT=y
CONFIG_BRIDGE_EBT_LOG=y
CONFIG_BRIDGE_EBT_ULOG=y
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 is not set
CONFIG_IP_DCCP_CCID3=y
CONFIG_IP_DCCP_TFRC_LIB=y
# CONFIG_IP_DCCP_CCID3_DEBUG is not set
CONFIG_IP_DCCP_CCID3_RTO=100

#
# DCCP Kernel Hacking
#
# CONFIG_IP_DCCP_DEBUG is not set
CONFIG_IP_SCTP=y
CONFIG_SCTP_DBG_MSG=y
CONFIG_SCTP_DBG_OBJCNT=y
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
CONFIG_TIPC=y
CONFIG_TIPC_ADVANCED=y
CONFIG_TIPC_ZONES=3
CONFIG_TIPC_CLUSTERS=1
CONFIG_TIPC_NODES=255
CONFIG_TIPC_SLAVE_NODES=0
CONFIG_TIPC_PORTS=8191
CONFIG_TIPC_LOG=0
# CONFIG_TIPC_DEBUG is not set
CONFIG_ATM=y
CONFIG_ATM_CLIP=y
CONFIG_ATM_CLIP_NO_ICMP=y
CONFIG_ATM_LANE=y
CONFIG_ATM_MPOA=y
CONFIG_ATM_BR2684=y
CONFIG_ATM_BR2684_IPFILTER=y
CONFIG_BRIDGE=y
CONFIG_VLAN_8021Q=y
CONFIG_DECNET=y
CONFIG_DECNET_ROUTER=y
CONFIG_LLC=y
CONFIG_LLC2=y
CONFIG_IPX=y
CONFIG_IPX_INTERN=y
CONFIG_ATALK=y
CONFIG_DEV_APPLETALK=y
CONFIG_IPDDP=y
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
CONFIG_X25=y
CONFIG_LAPB=y
CONFIG_ECONET=y
CONFIG_ECONET_AUNUDP=y
CONFIG_ECONET_NATIVE=y
CONFIG_WAN_ROUTER=y

#
# QoS and/or fair queueing
#
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_FIFO=y

#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
CONFIG_NET_SCH_HFSC=y
CONFIG_NET_SCH_ATM=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_RR=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
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=y
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_CLS_U32_PERF=y
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_EMATCH=y
CONFIG_NET_EMATCH_STACK=32
CONFIG_NET_EMATCH_CMP=y
CONFIG_NET_EMATCH_NBYTE=y
CONFIG_NET_EMATCH_U32=y
CONFIG_NET_EMATCH_META=y
CONFIG_NET_EMATCH_TEXT=y
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=y
CONFIG_NET_ACT_GACT=y
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=y
CONFIG_NET_ACT_IPT=y
CONFIG_NET_ACT_PEDIT=y
CONFIG_NET_ACT_SIMP=y
CONFIG_NET_CLS_POLICE=y
CONFIG_NET_CLS_IND=y

#
# Network testing
#
CONFIG_NET_PKTGEN=y
CONFIG_HAMRADIO=y

#
# Packet Radio protocols
#
CONFIG_AX25=y
CONFIG_AX25_DAMA_SLAVE=y
CONFIG_NETROM=y
CONFIG_ROSE=y

#
# AX.25 network device drivers
#
CONFIG_MKISS=y
CONFIG_6PACK=y
CONFIG_BPQETHER=y
CONFIG_BAYCOM_SER_FDX=y
CONFIG_BAYCOM_SER_HDX=y
CONFIG_YAM=y
CONFIG_IRDA=y

#
# IrDA protocols
#
CONFIG_IRLAN=y
CONFIG_IRCOMM=y
CONFIG_IRDA_ULTRA=y

#
# IrDA options
#
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set

#
# Infrared-port device drivers
#

#
# SIR device drivers
#
CONFIG_IRTTY_SIR=y

#
# Dongle support
#
CONFIG_DONGLE=y
CONFIG_ESI_DONGLE=y
CONFIG_ACTISYS_DONGLE=y
CONFIG_TEKRAM_DONGLE=y
CONFIG_TOIM3232_DONGLE=y
CONFIG_LITELINK_DONGLE=y
CONFIG_MA600_DONGLE=y
CONFIG_GIRBIL_DONGLE=y
CONFIG_MCP2120_DONGLE=y
CONFIG_OLD_BELKIN_DONGLE=y
CONFIG_ACT200L_DONGLE=y
CONFIG_KINGSUN_DONGLE=y

#
# Old SIR device drivers
#

#
# Old Serial dongle support
#

#
# FIR device drivers
#
CONFIG_USB_IRDA=y
CONFIG_SIGMATEL_FIR=y
CONFIG_NSC_FIR=y
CONFIG_WINBOND_FIR=y
CONFIG_TOSHIBA_FIR=y
CONFIG_SMC_IRCC_FIR=y
CONFIG_ALI_FIR=y
CONFIG_VLSI_FIR=y
CONFIG_VIA_FIR=y
CONFIG_MCS_FIR=y
CONFIG_BT=y
CONFIG_BT_L2CAP=y
CONFIG_BT_SCO=y
CONFIG_BT_RFCOMM=y
CONFIG_BT_RFCOMM_TTY=y
CONFIG_BT_BNEP=y
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_HIDP=y

#
# Bluetooth device drivers
#
CONFIG_BT_HCIUSB=y
CONFIG_BT_HCIUSB_SCO=y
CONFIG_BT_HCIUART=y
CONFIG_BT_HCIUART_H4=y
CONFIG_BT_HCIUART_BCSP=y
CONFIG_BT_HCIBCM203X=y
CONFIG_BT_HCIBPA10X=y
CONFIG_BT_HCIBFUSB=y
CONFIG_BT_HCIVHCI=y
CONFIG_AF_RXRPC=y
# CONFIG_AF_RXRPC_DEBUG is not set
CONFIG_RXKAD=y
CONFIG_FIB_RULES=y

#
# Wireless
#
# CONFIG_CFG80211 is not set
CONFIG_WIRELESS_EXT=y
# CONFIG_MAC80211 is not set
CONFIG_IEEE80211=y
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT_WEP=y
# CONFIG_IEEE80211_CRYPT_CCMP is not set
# CONFIG_IEEE80211_CRYPT_TKIP is not set
# CONFIG_IEEE80211_SOFTMAC is not set
CONFIG_RFKILL=y
CONFIG_RFKILL_INPUT=y
# CONFIG_NET_9P is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_CPQ_DA=y
CONFIG_BLK_CPQ_CISS_DA=y
CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=y
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_CRYPTOLOOP=y
CONFIG_BLK_DEV_NBD=y
CONFIG_BLK_DEV_SX8=y
CONFIG_BLK_DEV_UB=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
CONFIG_CDROM_PKTCDVD=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=y
CONFIG_XEN_BLKDEV_FRONTEND=y
CONFIG_MISC_DEVICES=y
CONFIG_IBM_ASM=y
CONFIG_PHANTOM=y
CONFIG_EEPROM_93CX6=y
CONFIG_SGI_IOC4=y
CONFIG_TIFM_CORE=y
CONFIG_TIFM_7XX1=y
CONFIG_MSI_LAPTOP=y
CONFIG_SONY_LAPTOP=y
CONFIG_SONYPI_COMPAT=y
CONFIG_THINKPAD_ACPI=m
# CONFIG_THINKPAD_ACPI_DEBUG is not set
CONFIG_THINKPAD_ACPI_BAY=y
CONFIG_THINKPAD_ACPI_INPUT_ENABLED=y
CONFIG_IDE=y
CONFIG_IDE_MAX_HWIFS=4
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives #
CONFIG_BLK_DEV_IDE_SATA=y
CONFIG_BLK_DEV_HD_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDETAPE=y
CONFIG_BLK_DEV_IDEFLOPPY=y
CONFIG_BLK_DEV_IDESCSI=y
CONFIG_BLK_DEV_IDEACPI=y
CONFIG_IDE_TASK_IOCTL=y
CONFIG_IDE_PROC_FS=y

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
# CONFIG_BLK_DEV_PLATFORM is not set
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPNP=y

#
# PCI IDE chipsets support
#
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_IDEPCI_PCIBUS_ORDER=y
CONFIG_BLK_DEV_OFFBOARD=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_OPTI621=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_BLK_DEV_IDEDMA_FORCED=y
CONFIG_IDEDMA_ONLYDISK=y
CONFIG_BLK_DEV_AEC62XX=y
CONFIG_BLK_DEV_ALI15X3=y
CONFIG_WDC_ALI15X3=y
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_ATIIXP=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_TRIFLEX=y
CONFIG_BLK_DEV_CY82C693=y
CONFIG_BLK_DEV_CS5520=y
CONFIG_BLK_DEV_CS5530=y
CONFIG_BLK_DEV_CS5535=y
CONFIG_BLK_DEV_HPT34X=y
CONFIG_HPT34X_AUTODMA=y
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_JMICRON=y
CONFIG_BLK_DEV_SC1200=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_BLK_DEV_IT8213=y
CONFIG_BLK_DEV_IT821X=y
CONFIG_BLK_DEV_NS87415=y
CONFIG_BLK_DEV_PDC202XX_OLD=y
CONFIG_PDC202XX_BURST=y
CONFIG_BLK_DEV_PDC202XX_NEW=y
CONFIG_BLK_DEV_SVWKS=y
CONFIG_BLK_DEV_SIIMAGE=y
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
CONFIG_BLK_DEV_TRM290=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_BLK_DEV_TC86C001=y
# CONFIG_IDE_ARM is not set
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_HD=y

#
# SCSI device support
#
CONFIG_RAID_ATTRS=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_TGT=y
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 is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_SCH=y

#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs #
CONFIG_SCSI_MULTI_LUN=y
# CONFIG_SCSI_CONSTANTS is not set CONFIG_SCSI_LOGGING=y
CONFIG_SCSI_SCAN_ASYNC=y
CONFIG_SCSI_WAIT_SCAN=m

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_ISCSI_ATTRS=y
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
CONFIG_SCSI_AIC7XXX_OLD=y
CONFIG_SCSI_AIC79XX=y
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
CONFIG_AIC79XX_RESET_DELAY_MS=5000
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
CONFIG_AIC79XX_REG_PRETTY_PRINT=y
CONFIG_SCSI_AIC94XX=y
# CONFIG_AIC94XX_DEBUG is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DMX3191D is not set
CONFIG_SCSI_EATA=y
CONFIG_SCSI_EATA_TAGGED_QUEUE=y
CONFIG_SCSI_EATA_LINKED_COMMANDS=y
CONFIG_SCSI_EATA_MAX_TAGS=16
CONFIG_SCSI_FUTURE_DOMAIN=y
CONFIG_SCSI_GDTH=y
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_STEX is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
CONFIG_SCSI_QLOGIC_1280=m
CONFIG_SCSI_QLA_FC=m
# CONFIG_SCSI_QLA_ISCSI is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
# CONFIG_SATA_SVW is not set
CONFIG_ATA_PIIX=y
# CONFIG_SATA_MV is not set
# CONFIG_SATA_NV is not set
# CONFIG_PDC_ADMA is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
# CONFIG_SATA_SIL is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_PATA_ALI is not set
# CONFIG_PATA_AMD is not set
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CS5535 is not set
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not set
# CONFIG_ATA_GENERIC is not set
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not set
# CONFIG_PATA_HPT3X3 is not set
# CONFIG_PATA_IT821X is not set
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not set
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_OLDPIIX is not set
# CONFIG_PATA_NETCELL is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
# CONFIG_PATA_RADISYS is not set
# CONFIG_PATA_RZ1000 is not set
# CONFIG_PATA_SC1200 is not set
# CONFIG_PATA_SERVERWORKS is not set
# CONFIG_PATA_PDC2027X is not set
# CONFIG_PATA_SIL680 is not set
# CONFIG_PATA_SIS is not set
# CONFIG_PATA_VIA is not set
# CONFIG_PATA_WINBOND is not set
CONFIG_PATA_PLATFORM=y
# CONFIG_MD is not set
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_IEEE1394 is not set
CONFIG_I2O=y
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
CONFIG_I2O_CONFIG=y
CONFIG_I2O_CONFIG_OLD_IOCTL=y
CONFIG_I2O_BUS=y
CONFIG_I2O_BLOCK=y
CONFIG_I2O_SCSI=y
CONFIG_I2O_PROC=y
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
CONFIG_NETDEVICES_MULTIQUEUE=y
CONFIG_IFB=y
CONFIG_DUMMY=y
CONFIG_BONDING=y
CONFIG_MACVLAN=y
CONFIG_EQUALIZER=y
CONFIG_TUN=y
CONFIG_NET_SB1000=y
# CONFIG_ARCNET is not set
CONFIG_PHYLIB=y

#
# MII PHY device drivers
#
CONFIG_MARVELL_PHY=y
CONFIG_DAVICOM_PHY=y
CONFIG_QSEMI_PHY=y
CONFIG_LXT_PHY=y
CONFIG_CICADA_PHY=y
CONFIG_VITESSE_PHY=y
CONFIG_SMSC_PHY=y
CONFIG_BROADCOM_PHY=y
CONFIG_ICPLUS_PHY=y
CONFIG_FIXED_PHY=y
CONFIG_FIXED_MII_10_FDX=y
CONFIG_FIXED_MII_100_FDX=y
# CONFIG_FIXED_MII_1000_FDX is not set
CONFIG_FIXED_MII_AMNT=1
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_HAPPYMEAL=y
CONFIG_SUNGEM=y
CONFIG_CASSINI=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=y
CONFIG_TYPHOON=y
CONFIG_NET_TULIP=y
CONFIG_DE2104X=y
CONFIG_TULIP=y
CONFIG_TULIP_MWI=y
CONFIG_TULIP_MMIO=y
CONFIG_TULIP_NAPI=y
CONFIG_TULIP_NAPI_HW_MITIGATION=y
CONFIG_DE4X5=y
CONFIG_WINBOND_840=y
CONFIG_DM9102=y
CONFIG_ULI526X=y
CONFIG_HP100=y
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
CONFIG_PCNET32_NAPI=y
CONFIG_AMD8111_ETH=y
CONFIG_AMD8111E_NAPI=y
CONFIG_ADAPTEC_STARFIRE=y
CONFIG_ADAPTEC_STARFIRE_NAPI=y
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
CONFIG_DGRS=y
CONFIG_EEPRO100=y
CONFIG_E100=y
CONFIG_FEALNX=y
CONFIG_NATSEMI=y
CONFIG_NE2K_PCI=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_SIS900=y
CONFIG_EPIC100=y
CONFIG_SUNDANCE=y
CONFIG_SUNDANCE_MMIO=y
CONFIG_TLAN=y
CONFIG_VIA_RHINE=y
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_RHINE_NAPI=y
CONFIG_SC92031=y
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_TR is not set

#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set

#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET_MII is not set
# CONFIG_USB_USBNET is not set
# CONFIG_WAN is not set
# CONFIG_ATM_DRIVERS is not set
# CONFIG_XEN_NETDEV_FRONTEND is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
CONFIG_SHAPER=y
CONFIG_NETCONSOLE=y
# CONFIG_NETCONSOLE_DYNAMIC is not set
CONFIG_NETPOLL=y
CONFIG_NETPOLL_TRAP=y
CONFIG_NET_POLL_CONTROLLER=y
# CONFIG_ISDN is not set
# 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 is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set

#
# 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 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
CONFIG_MOUSE_PS2_TOUCHKIT=y
CONFIG_MOUSE_SERIAL=y
CONFIG_MOUSE_APPLETOUCH=y
CONFIG_MOUSE_VSXXXAA=y
# 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=y
CONFIG_INPUT_WISTRON_BTNS=y
CONFIG_INPUT_ATLAS_BTNS=y
CONFIG_INPUT_ATI_REMOTE=y
CONFIG_INPUT_ATI_REMOTE2=y
CONFIG_INPUT_KEYSPAN_REMOTE=y
CONFIG_INPUT_POWERMATE=y
CONFIG_INPUT_YEALINK=y
CONFIG_INPUT_UINPUT=y

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
CONFIG_SERIO_CT82C710=y
CONFIG_SERIO_PCIPS2=y
CONFIG_SERIO_LIBPS2=y
CONFIG_SERIO_RAW=y
CONFIG_GAMEPORT=y
CONFIG_GAMEPORT_NS558=y
CONFIG_GAMEPORT_L4=y
CONFIG_GAMEPORT_EMU10K1=y
CONFIG_GAMEPORT_FM801=y

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_COMPUTONE=y
CONFIG_ROCKETPORT=y
CONFIG_CYCLADES=y
CONFIG_CYZ_INTR=y
CONFIG_DIGIEPCA=y
CONFIG_MOXA_INTELLIO=y
CONFIG_MOXA_SMARTIO=y
CONFIG_MOXA_SMARTIO_NEW=y
CONFIG_ISI=y
CONFIG_SYNCLINK=y
CONFIG_SYNCLINKMP=y
CONFIG_SYNCLINK_GT=y
CONFIG_N_HDLC=y
CONFIG_SPECIALIX=y
CONFIG_SPECIALIX_RTSCTS=y
CONFIG_SX=y
CONFIG_RIO=y
CONFIG_RIO_OLDPCI=y
CONFIG_STALDRV=y
# CONFIG_NOZOMI is not set

#
# 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_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SERIAL_JSM=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_HVC_DRIVER=y
CONFIG_HVC_XEN=y
CONFIG_IPMI_HANDLER=y
CONFIG_IPMI_PANIC_EVENT=y
CONFIG_IPMI_PANIC_STRING=y
CONFIG_IPMI_DEVICE_INTERFACE=y
CONFIG_IPMI_SI=y
CONFIG_IPMI_WATCHDOG=y
CONFIG_IPMI_POWEROFF=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=y
CONFIG_IB700_WDT=y
CONFIG_IBMASR=y
CONFIG_WAFER_WDT=y
CONFIG_I6300ESB_WDT=y
CONFIG_ITCO_WDT=y
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_SC1200_WDT=y
CONFIG_SCx200_WDT=y
CONFIG_PC87413_WDT=y
CONFIG_60XX_WDT=y
CONFIG_SBC8360_WDT=y
CONFIG_CPU5_WDT=y
CONFIG_SMSC37B787_WDT=y
CONFIG_W83627HF_WDT=y
CONFIG_W83697HF_WDT=y
CONFIG_W83877F_WDT=y
CONFIG_W83977F_WDT=y
CONFIG_MACHZ_WDT=y
CONFIG_SBC_EPX_C3_WATCHDOG=y

#
# PCI-based Watchdog Cards
#
CONFIG_PCIPCWATCHDOG=y
CONFIG_WDTPCI=y
CONFIG_WDT_501_PCI=y

#
# USB-based Watchdog Cards
#
CONFIG_USBPCWATCHDOG=y
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_INTEL=y
CONFIG_HW_RANDOM_AMD=y
CONFIG_HW_RANDOM_GEODE=y
CONFIG_HW_RANDOM_VIA=y
CONFIG_NVRAM=y
CONFIG_RTC=y
CONFIG_R3964=y
CONFIG_APPLICOM=y
CONFIG_SONYPI=y
CONFIG_AGP=y
CONFIG_AGP_ALI=y
CONFIG_AGP_ATI=y
CONFIG_AGP_AMD=y
CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y
CONFIG_AGP_NVIDIA=y
CONFIG_AGP_SIS=y
CONFIG_AGP_SWORKS=y
CONFIG_AGP_VIA=y
CONFIG_AGP_EFFICEON=y
CONFIG_DRM=y
CONFIG_DRM_TDFX=y
CONFIG_DRM_R128=y
CONFIG_DRM_RADEON=y
CONFIG_DRM_I810=y
CONFIG_DRM_I830=y
# CONFIG_DRM_I915 is not set
CONFIG_DRM_MGA=y
CONFIG_DRM_SIS=y
CONFIG_DRM_VIA=y
CONFIG_DRM_SAVAGE=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_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
CONFIG_HPET_MMAP=y
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=y

#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=y
CONFIG_I2C_ALGOPCF=y
CONFIG_I2C_ALGOPCA=y

#
# I2C Hardware Bus support
#
CONFIG_I2C_ALI1535=y
CONFIG_I2C_ALI1563=y
CONFIG_I2C_ALI15X3=y
CONFIG_I2C_AMD756=y
CONFIG_I2C_AMD756_S4882=y
CONFIG_I2C_AMD8111=y
CONFIG_I2C_I801=y
CONFIG_I2C_I810=y
CONFIG_I2C_PIIX4=y
CONFIG_I2C_NFORCE2=y
CONFIG_I2C_OCORES=y
CONFIG_I2C_PARPORT_LIGHT=y
CONFIG_I2C_PROSAVAGE=y
CONFIG_I2C_SAVAGE4=y
CONFIG_I2C_SIMTEC=y
CONFIG_SCx200_I2C=y
CONFIG_SCx200_I2C_SCL=12
CONFIG_SCx200_I2C_SDA=13
CONFIG_SCx200_ACB=y
CONFIG_I2C_SIS5595=y
CONFIG_I2C_SIS630=y
CONFIG_I2C_SIS96X=y
CONFIG_I2C_TAOS_EVM=y
CONFIG_I2C_STUB=m
CONFIG_I2C_TINY_USB=y
CONFIG_I2C_VIA=y
CONFIG_I2C_VIAPRO=y
CONFIG_I2C_VOODOO3=y

#
# Miscellaneous I2C Chip support
#
CONFIG_SENSORS_DS1337=y
CONFIG_SENSORS_DS1374=y
# CONFIG_SENSORS_DS1682 is not set
CONFIG_SENSORS_EEPROM=y
CONFIG_SENSORS_PCF8574=y
CONFIG_SENSORS_PCA9539=y
CONFIG_SENSORS_PCF8591=y
CONFIG_SENSORS_MAX6875=y
CONFIG_SENSORS_TSL2550=y
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set

#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set
CONFIG_W1=y
# CONFIG_W1_CON is not set

#
# 1-wire Bus Masters
#
# CONFIG_W1_MASTER_MATROX is not set
# CONFIG_W1_MASTER_DS2490 is not set
# CONFIG_W1_MASTER_DS2482 is not set

#
# 1-wire Slaves
#
# CONFIG_W1_SLAVE_THERM is not set
# CONFIG_W1_SLAVE_SMEM is not set
# CONFIG_W1_SLAVE_DS2433 is not set
CONFIG_W1_SLAVE_DS2760=y
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
CONFIG_PDA_POWER=y
CONFIG_BATTERY_DS2760=y
CONFIG_HWMON=y
CONFIG_HWMON_VID=y
CONFIG_SENSORS_ABITUGURU=y
CONFIG_SENSORS_ABITUGURU3=y
CONFIG_SENSORS_AD7418=y
CONFIG_SENSORS_ADM1021=y
CONFIG_SENSORS_ADM1025=y
CONFIG_SENSORS_ADM1026=y
CONFIG_SENSORS_ADM1029=y
CONFIG_SENSORS_ADM1031=y
CONFIG_SENSORS_ADM9240=y
CONFIG_SENSORS_K8TEMP=y
CONFIG_SENSORS_ASB100=y
CONFIG_SENSORS_ATXP1=y
CONFIG_SENSORS_DS1621=y
CONFIG_SENSORS_F71805F=y
CONFIG_SENSORS_FSCHER=y
CONFIG_SENSORS_FSCPOS=y
CONFIG_SENSORS_GL518SM=y
CONFIG_SENSORS_GL520SM=y
CONFIG_SENSORS_CORETEMP=y
CONFIG_SENSORS_IT87=y
CONFIG_SENSORS_LM63=y
CONFIG_SENSORS_LM75=y
CONFIG_SENSORS_LM77=y
CONFIG_SENSORS_LM78=y
CONFIG_SENSORS_LM80=y
CONFIG_SENSORS_LM83=y
CONFIG_SENSORS_LM85=y
CONFIG_SENSORS_LM87=y
CONFIG_SENSORS_LM90=y
CONFIG_SENSORS_LM92=y
CONFIG_SENSORS_LM93=y
CONFIG_SENSORS_MAX1619=y
CONFIG_SENSORS_MAX6650=y
CONFIG_SENSORS_PC87360=y
CONFIG_SENSORS_PC87427=y
CONFIG_SENSORS_SIS5595=y
CONFIG_SENSORS_DME1737=y
CONFIG_SENSORS_SMSC47M1=y
CONFIG_SENSORS_SMSC47M192=y
CONFIG_SENSORS_SMSC47B397=y
# CONFIG_SENSORS_THMC50 is not set
CONFIG_SENSORS_VIA686A=y
CONFIG_SENSORS_VT1211=y
CONFIG_SENSORS_VT8231=y
CONFIG_SENSORS_W83781D=y
CONFIG_SENSORS_W83791D=y
CONFIG_SENSORS_W83792D=y
CONFIG_SENSORS_W83793=y
CONFIG_SENSORS_W83L785TS=y
CONFIG_SENSORS_W83627HF=y
CONFIG_SENSORS_W83627EHF=y
CONFIG_SENSORS_HDAPS=y
CONFIG_SENSORS_APPLESMC=y
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Sonics Silicon Backplane
#
CONFIG_SSB=y
CONFIG_SSB_PCIHOST=y
# CONFIG_SSB_SILENT is not set
# CONFIG_SSB_DEBUG is not set
CONFIG_SSB_DRIVER_PCICORE=y

#
# Multifunction device drivers
#
CONFIG_MFD_SM501=y

#
# Multimedia devices
#
CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L1=y
CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_TVAUDIO=y
CONFIG_VIDEO_TDA7432=y
CONFIG_VIDEO_TDA9840=y
CONFIG_VIDEO_TDA9875=y
CONFIG_VIDEO_TEA6415C=y
CONFIG_VIDEO_TEA6420=y
CONFIG_VIDEO_MSP3400=y
CONFIG_VIDEO_CS53L32A=y
CONFIG_VIDEO_WM8775=y
CONFIG_VIDEO_WM8739=y
CONFIG_VIDEO_VP27SMPX=y
CONFIG_VIDEO_BT819=y
CONFIG_VIDEO_BT856=y
CONFIG_VIDEO_KS0127=y
CONFIG_VIDEO_OV7670=y
CONFIG_VIDEO_SAA7110=y
CONFIG_VIDEO_SAA7111=y
CONFIG_VIDEO_SAA7114=y
CONFIG_VIDEO_SAA711X=y
CONFIG_VIDEO_TVP5150=y
CONFIG_VIDEO_VPX3220=y
CONFIG_VIDEO_CX25840=y
CONFIG_VIDEO_CX2341X=y
CONFIG_VIDEO_SAA7127=y
CONFIG_VIDEO_SAA7185=y
CONFIG_VIDEO_ADV7170=y
CONFIG_VIDEO_ADV7175=y
CONFIG_VIDEO_UPD64031A=y
CONFIG_VIDEO_UPD64083=y
CONFIG_VIDEO_VIVI=y
CONFIG_VIDEO_BT848=y
CONFIG_VIDEO_BT848_DVB=y
CONFIG_VIDEO_SAA6588=y
CONFIG_VIDEO_CPIA=y
CONFIG_VIDEO_CPIA_USB=y
CONFIG_VIDEO_CPIA2=y
CONFIG_VIDEO_SAA5246A=y
CONFIG_VIDEO_SAA5249=y
CONFIG_TUNER_3036=y
CONFIG_TUNER_TEA5761=y
CONFIG_VIDEO_STRADIS=y
CONFIG_VIDEO_ZORAN_ZR36060=y
CONFIG_VIDEO_ZORAN=y
CONFIG_VIDEO_ZORAN_BUZ=y
CONFIG_VIDEO_ZORAN_DC10=y
CONFIG_VIDEO_ZORAN_DC30=y
CONFIG_VIDEO_ZORAN_LML33=y
CONFIG_VIDEO_ZORAN_LML33R10=y
CONFIG_VIDEO_ZORAN_AVS6EYES=y
CONFIG_VIDEO_MEYE=y
CONFIG_VIDEO_SAA7134=y
CONFIG_VIDEO_SAA7134_DVB=y
CONFIG_VIDEO_MXB=y
CONFIG_VIDEO_DPC=y
CONFIG_VIDEO_HEXIUM_ORION=y
CONFIG_VIDEO_HEXIUM_GEMINI=y
CONFIG_VIDEO_CX88=y
CONFIG_VIDEO_CX88_BLACKBIRD=y
CONFIG_VIDEO_CX88_DVB=y
CONFIG_VIDEO_CX88_VP3054=y
CONFIG_VIDEO_IVTV=y
# CONFIG_VIDEO_IVTV_FB is not set
CONFIG_VIDEO_CAFE_CCIC=y
CONFIG_V4L_USB_DRIVERS=y
CONFIG_VIDEO_PVRUSB2=y
CONFIG_VIDEO_PVRUSB2_29XXX=y
CONFIG_VIDEO_PVRUSB2_24XXX=y
CONFIG_VIDEO_PVRUSB2_SYSFS=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
CONFIG_VIDEO_EM28XX=y
CONFIG_VIDEO_USBVISION=y
CONFIG_VIDEO_USBVIDEO=y
CONFIG_USB_VICAM=y
CONFIG_USB_IBMCAM=y
CONFIG_USB_KONICAWC=y
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=y
CONFIG_USB_PWC=y
# CONFIG_USB_PWC_DEBUG is not set
CONFIG_USB_ZR364XX=y
CONFIG_RADIO_ADAPTERS=y
CONFIG_RADIO_GEMTEK_PCI=y
CONFIG_RADIO_MAXIRADIO=y
CONFIG_RADIO_MAESTRO=y
CONFIG_USB_DSBR=y
CONFIG_DVB_CORE=y
CONFIG_DVB_CORE_ATTACH=y
CONFIG_DVB_CAPTURE_DRIVERS=y

#
# Supported SAA7146 based PCI Adapters
#
CONFIG_DVB_AV7110=y
CONFIG_DVB_AV7110_OSD=y
CONFIG_DVB_BUDGET=y
CONFIG_DVB_BUDGET_CI=y
CONFIG_DVB_BUDGET_AV=y
CONFIG_DVB_BUDGET_PATCH=y

#
# Supported USB Adapters
#
CONFIG_DVB_USB=y
# CONFIG_DVB_USB_DEBUG is not set
CONFIG_DVB_USB_A800=y
CONFIG_DVB_USB_DIBUSB_MB=y
CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
CONFIG_DVB_USB_DIBUSB_MC=y
CONFIG_DVB_USB_DIB0700=y
CONFIG_DVB_USB_UMT_010=y
CONFIG_DVB_USB_CXUSB=y
CONFIG_DVB_USB_M920X=y
CONFIG_DVB_USB_GL861=y
CONFIG_DVB_USB_AU6610=y
CONFIG_DVB_USB_DIGITV=y
CONFIG_DVB_USB_VP7045=y
CONFIG_DVB_USB_VP702X=y
CONFIG_DVB_USB_GP8PSK=y
CONFIG_DVB_USB_NOVA_T_USB2=y
CONFIG_DVB_USB_TTUSB2=y
CONFIG_DVB_USB_DTT200U=y
CONFIG_DVB_USB_OPERA1=y
CONFIG_DVB_USB_AF9005=y
CONFIG_DVB_USB_AF9005_REMOTE=y
CONFIG_DVB_TTUSB_BUDGET=y
CONFIG_DVB_TTUSB_DEC=y
CONFIG_DVB_CINERGYT2=y
CONFIG_DVB_CINERGYT2_TUNING=y
CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=y
CONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=50

#
# Supported FlexCopII (B2C2) Adapters
#
CONFIG_DVB_B2C2_FLEXCOP=y
CONFIG_DVB_B2C2_FLEXCOP_PCI=y
CONFIG_DVB_B2C2_FLEXCOP_USB=y
# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set

#
# Supported BT878 Adapters
#
CONFIG_DVB_BT8XX=y

#
# Supported Pluto2 Adapters
#
CONFIG_DVB_PLUTO2=y

#
# Supported DVB Frontends
#

#
# Customise DVB Frontends
#
CONFIG_DVB_FE_CUSTOMISE=y

#
# DVB-S (satellite) frontends
#
CONFIG_DVB_STV0299=y
CONFIG_DVB_CX24110=y
CONFIG_DVB_CX24123=y
CONFIG_DVB_TDA8083=y
CONFIG_DVB_MT312=y
CONFIG_DVB_VES1X93=y
CONFIG_DVB_S5H1420=y
CONFIG_DVB_TDA10086=y

#
# DVB-T (terrestrial) frontends
#
CONFIG_DVB_SP8870=y
CONFIG_DVB_SP887X=y
CONFIG_DVB_CX22700=y
CONFIG_DVB_CX22702=y
CONFIG_DVB_L64781=y
CONFIG_DVB_TDA1004X=y
CONFIG_DVB_NXT6000=y
CONFIG_DVB_MT352=y
CONFIG_DVB_ZL10353=y
CONFIG_DVB_DIB3000MB=y
CONFIG_DVB_DIB3000MC=y
CONFIG_DVB_DIB7000M=y
CONFIG_DVB_DIB7000P=y

#
# DVB-C (cable) frontends
#
CONFIG_DVB_VES1820=y
CONFIG_DVB_TDA10021=y
CONFIG_DVB_TDA10023=y
CONFIG_DVB_STV0297=y

#
# ATSC (North American/Korean Terrestrial/Cable DTV) frontends #
CONFIG_DVB_NXT200X=y
CONFIG_DVB_OR51211=y
CONFIG_DVB_OR51132=y
CONFIG_DVB_BCM3510=y
CONFIG_DVB_LGDT330X=y
CONFIG_DVB_S5H1409=m

#
# Tuners/PLL support
#
CONFIG_DVB_PLL=y
CONFIG_DVB_TDA826X=y
CONFIG_DVB_TDA827X=y
CONFIG_DVB_TUNER_QT1010=y
CONFIG_DVB_TUNER_MT2060=y
CONFIG_DVB_TUNER_MT2266=m
CONFIG_DVB_TUNER_MT2131=m
CONFIG_DVB_TUNER_DIB0070=y

#
# Miscellaneous devices
#
CONFIG_DVB_LNBP21=y
CONFIG_DVB_ISL6421=y
CONFIG_DVB_TUA6100=y
CONFIG_VIDEO_SAA7146=y
CONFIG_VIDEO_SAA7146_VV=y
CONFIG_VIDEO_TUNER=y
CONFIG_VIDEO_BUF=y
CONFIG_VIDEO_BUF_DVB=y
CONFIG_VIDEO_BTCX=y
CONFIG_VIDEO_IR_I2C=y
CONFIG_VIDEO_IR=y
CONFIG_VIDEO_TVEEPROM=y
CONFIG_DAB=y
CONFIG_USB_DABUSB=y

#
# Graphics support
#
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_PROGEAR=y

#
# Display device support
#
CONFIG_DISPLAY_SUPPORT=y

#
# Display hardware drivers
#
# CONFIG_VGASTATE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
# CONFIG_FB_DDC is not set
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_SYS_FOPS is not set
CONFIG_FB_DEFERRED_IO=y
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_UVESA is not set
CONFIG_FB_VESA=y
# CONFIG_FB_EFI is not set
# CONFIG_FB_IMAC is not set
# CONFIG_FB_HECUBA is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_INTEL is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_S3 is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set
# CONFIG_FB_CYBLA is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_SM501 is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_VIDEO_SELECT=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_FONT_6x11=y
CONFIG_FONT_7x14=y
CONFIG_FONT_PEARL_8x8=y
CONFIG_FONT_ACORN_8x8=y
CONFIG_FONT_MINI_4x6=y
CONFIG_FONT_SUN8x16=y
CONFIG_FONT_SUN12x22=y
CONFIG_FONT_10x18=y
# CONFIG_LOGO is not set

#
# Sound
#
# CONFIG_SOUND is not set
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set

#
# USB Input Devices
#
CONFIG_USB_HID=y
CONFIG_USB_HIDINPUT_POWERBOOK=y
CONFIG_HID_FF=y
CONFIG_HID_PID=y
CONFIG_LOGITECH_FF=y
CONFIG_PANTHERLORD_FF=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_ZEROPLUS_FF=y
CONFIG_USB_HIDDEV=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

#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
CONFIG_USB_DEVICE_CLASS=y
CONFIG_USB_DYNAMIC_MINORS=y
CONFIG_USB_SUSPEND=y
CONFIG_USB_PERSIST=y
# CONFIG_USB_OTG is not set

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_SPLIT_ISO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
CONFIG_USB_ISP116X_HCD=y
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_HCD_SSB is not set
# 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_U132_HCD=y
CONFIG_USB_SL811_HCD=y
CONFIG_USB_R8A66597_HCD=y

#
# USB Device Class drivers
#
CONFIG_USB_ACM=y
CONFIG_USB_PRINTER=y

#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' #

#

# may also be needed; see USB_STORAGE Help for more information
#
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_STORAGE_ALAUDA=y
CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_LIBUSUAL=y

#
# USB Imaging devices
#
CONFIG_USB_MDC800=y
CONFIG_USB_MICROTEK=y
CONFIG_USB_MON=y

#
# USB port drivers
#

#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_CONSOLE=y
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_AIRCABLE=y
CONFIG_USB_SERIAL_AIRPRIME=y
CONFIG_USB_SERIAL_ARK3116=y
CONFIG_USB_SERIAL_BELKIN=y
CONFIG_USB_SERIAL_WHITEHEAT=y
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=y
CONFIG_USB_SERIAL_CP2101=y
CONFIG_USB_SERIAL_CYPRESS_M8=y
CONFIG_USB_SERIAL_EMPEG=y
CONFIG_USB_SERIAL_FTDI_SIO=y
CONFIG_USB_SERIAL_FUNSOFT=y
CONFIG_USB_SERIAL_VISOR=y
CONFIG_USB_SERIAL_IPAQ=y
CONFIG_USB_SERIAL_IR=y
CONFIG_USB_SERIAL_EDGEPORT=y
CONFIG_USB_SERIAL_EDGEPORT_TI=y
CONFIG_USB_SERIAL_GARMIN=y
CONFIG_USB_SERIAL_IPW=y
CONFIG_USB_SERIAL_KEYSPAN_PDA=y
CONFIG_USB_SERIAL_KEYSPAN=y
CONFIG_USB_SERIAL_KEYSPAN_MPR=y
CONFIG_USB_SERIAL_KEYSPAN_USA28=y
CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
CONFIG_USB_SERIAL_KEYSPAN_USA19=y
CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
CONFIG_USB_SERIAL_KLSI=y
CONFIG_USB_SERIAL_KOBIL_SCT=y
CONFIG_USB_SERIAL_MCT_U232=y
CONFIG_USB_SERIAL_MOS7720=y
CONFIG_USB_SERIAL_MOS7840=y
CONFIG_USB_SERIAL_NAVMAN=y
CONFIG_USB_SERIAL_PL2303=y
CONFIG_USB_SERIAL_OTI6858=y
CONFIG_USB_SERIAL_HP4X=y
CONFIG_USB_SERIAL_SAFE=y
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_USB_SERIAL_SIERRAWIRELESS=y
CONFIG_USB_SERIAL_TI=y
CONFIG_USB_SERIAL_CYBERJACK=y
CONFIG_USB_SERIAL_XIRCOM=y
CONFIG_USB_SERIAL_OPTION=y
CONFIG_USB_SERIAL_OMNINET=y
# CONFIG_USB_SERIAL_DEBUG is not set
CONFIG_USB_EZUSB=y

#
# USB Miscellaneous drivers
#
CONFIG_USB_EMI62=y
CONFIG_USB_EMI26=y
CONFIG_USB_ADUTUX=y
CONFIG_USB_AUERSWALD=y
CONFIG_USB_RIO500=y
CONFIG_USB_LEGOTOWER=y
CONFIG_USB_LCD=y
CONFIG_USB_BERRY_CHARGE=y
CONFIG_USB_LED=y
CONFIG_USB_CYPRESS_CY7C63=y
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=y
CONFIG_USB_APPLEDISPLAY=y
CONFIG_USB_SISUSBVGA=y
CONFIG_USB_SISUSBVGA_CON=y
CONFIG_USB_LD=y
CONFIG_USB_TRANCEVIBRATOR=y
CONFIG_USB_IOWARRIOR=y
CONFIG_USB_TEST=y
# CONFIG_USB_GOTEMP is not set

#
# USB DSL modem support
#
CONFIG_USB_ATM=y
CONFIG_USB_SPEEDTOUCH=y
CONFIG_USB_CXACRU=y
CONFIG_USB_UEAGLEATM=y
CONFIG_USB_XUSBATM=y

#
# USB Gadget Support
#
CONFIG_USB_GADGET=y
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGET_DEBUG_FILES is not set
CONFIG_USB_GADGET_SELECTED=y
CONFIG_USB_GADGET_AMD5536UDC=y
CONFIG_USB_AMD5536UDC=y
# CONFIG_USB_GADGET_FSL_USB2 is not set
# CONFIG_USB_GADGET_NET2280 is not set
# CONFIG_USB_GADGET_PXA2XX is not set
# CONFIG_USB_GADGET_M66592 is not set
# CONFIG_USB_GADGET_GOKU is not set
# CONFIG_USB_GADGET_LH7A40X is not set
# CONFIG_USB_GADGET_OMAP is not set
# CONFIG_USB_GADGET_S3C2410 is not set
# CONFIG_USB_GADGET_AT91 is not set
# CONFIG_USB_GADGET_DUMMY_HCD is not set
CONFIG_USB_GADGET_DUALSPEED=y
# CONFIG_USB_ZERO is not set
CONFIG_USB_ETH=y
CONFIG_USB_ETH_RNDIS=y
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_FILE_STORAGE is not set
# CONFIG_USB_G_SERIAL is not set
# CONFIG_USB_MIDI_GADGET is not set
# CONFIG_MMC is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y

#
# LED drivers
#
CONFIG_LEDS_NET48XX=y
CONFIG_LEDS_WRAP=y

#
# LED Triggers
#
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_IDE_DISK=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
# CONFIG_INFINIBAND is not set
CONFIG_EDAC=y

#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_MM_EDAC=y
CONFIG_EDAC_AMD76X=y
CONFIG_EDAC_E7XXX=y
CONFIG_EDAC_E752X=y
CONFIG_EDAC_I82875P=y
CONFIG_EDAC_I82975X=y
CONFIG_EDAC_I3000=y
CONFIG_EDAC_I82860=y
CONFIG_EDAC_R82600=y
CONFIG_EDAC_I5000=y
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
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_DS1672=y
CONFIG_RTC_DRV_MAX6900=y
CONFIG_RTC_DRV_RS5C372=y
CONFIG_RTC_DRV_ISL1208=y
CONFIG_RTC_DRV_X1205=y
CONFIG_RTC_DRV_PCF8563=y
CONFIG_RTC_DRV_PCF8583=y
CONFIG_RTC_DRV_M41T80=y
CONFIG_RTC_DRV_M41T80_WDT=y

#
# SPI RTC drivers
#

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
CONFIG_RTC_DRV_DS1553=y
CONFIG_RTC_DRV_STK17TA8=y
CONFIG_RTC_DRV_DS1742=y
CONFIG_RTC_DRV_M48T86=y
CONFIG_RTC_DRV_M48T59=y
CONFIG_RTC_DRV_V3020=y

#
# on-CPU RTC drivers
#

#
# DMA Engine support
#
CONFIG_DMA_ENGINE=y

#
# DMA Clients
#
CONFIG_NET_DMA=y

#
# DMA Devices
#
CONFIG_INTEL_IOATDMA=y
CONFIG_DCA=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
CONFIG_KVM_INTEL=y
CONFIG_KVM_AMD=y

#
# Userspace I/O
#
CONFIG_UIO=y
CONFIG_UIO_CIF=y
CONFIG_LGUEST=y
CONFIG_LGUEST_GUEST=y
CONFIG_LGUEST_NET=y
CONFIG_LGUEST_BLOCK=y

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT2_FS_XIP=y
CONFIG_FS_XIP=y
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_REISER4_FS is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_QUOTA=y
CONFIG_QFMT_V1=y
CONFIG_QFMT_V2=y
CONFIG_QUOTACTL=y
CONFIG_DNOTIFY=y
CONFIG_AUTOFS_FS=y
CONFIG_AUTOFS4_FS=y
CONFIG_FUSE_FS=y
CONFIG_GENERIC_ACL=y

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
CONFIG_NTFS_FS=y
# CONFIG_NTFS_DEBUG is not set
CONFIG_NTFS_RW=y

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
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_RAMFS=y
CONFIG_CONFIGFS_FS=y

#
# Layered filesystems
#
# CONFIG_ECRYPT_FS is not set
# CONFIG_UNION_FS is not set

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
CONFIG_ROOT_NFS=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_NFS_ACL_SUPPORT=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
CONFIG_SUNRPC_BIND34=y
CONFIG_RPCSEC_GSS_KRB5=y
CONFIG_RPCSEC_GSS_SPKM3=y
# CONFIG_SMB_FS is not set
CONFIG_CIFS=y
CONFIG_CIFS_STATS=y
CONFIG_CIFS_STATS2=y
CONFIG_CIFS_WEAK_PW_HASH=y
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DEBUG2 is not set
CONFIG_CIFS_EXPERIMENTAL=y
CONFIG_CIFS_UPCALL=y
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS 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=y
CONFIG_ACORN_PARTITION_RISCIX=y
CONFIG_OSF_PARTITION=y
CONFIG_AMIGA_PARTITION=y
CONFIG_ATARI_PARTITION=y
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_MINIX_SUBPARTITION=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_LDM_PARTITION=y
# CONFIG_LDM_DEBUG is not set
CONFIG_SGI_PARTITION=y
CONFIG_ULTRIX_PARTITION=y
CONFIG_SUN_PARTITION=y
CONFIG_KARMA_PARTITION=y
CONFIG_EFI_PARTITION=y
CONFIG_SYSV68_PARTITION=y

#
# Native Language Support
#
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_737=y
CONFIG_NLS_CODEPAGE_775=y
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=y
CONFIG_NLS_CODEPAGE_862=y
CONFIG_NLS_CODEPAGE_863=y
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=y
CONFIG_NLS_CODEPAGE_932=y
CONFIG_NLS_CODEPAGE_949=y
CONFIG_NLS_CODEPAGE_874=y
CONFIG_NLS_ISO8859_8=y
CONFIG_NLS_CODEPAGE_1250=y
CONFIG_NLS_CODEPAGE_1251=y
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=y
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=y
CONFIG_NLS_ISO8859_9=y
CONFIG_NLS_ISO8859_13=y
CONFIG_NLS_ISO8859_14=y
CONFIG_NLS_ISO8859_15=y
CONFIG_NLS_KOI8_R=y
CONFIG_NLS_KOI8_U=y
CONFIG_NLS_UTF8=y

#
# Distributed Lock Manager
#
CONFIG_DLM=y
# CONFIG_DLM_DEBUG is not set
# CONFIG_INSTRUMENTATION is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_UNUSED_SYMBOLS=y
# CONFIG_PAGE_OWNER is not set
CONFIG_DEBUG_FS=y
CONFIG_HEADERS_CHECK=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_SHIRQ=y
CONFIG_DETECT_SOFTLOCKUP=y
CONFIG_SCHED_DEBUG=y
CONFIG_SCHEDSTATS=y
CONFIG_TIMER_STATS=y
CONFIG_SLUB_DEBUG_ON=y
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=y
CONFIG_DEBUG_LOCKDEP=y
CONFIG_TRACE_IRQFLAGS=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
CONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_HIGHMEM=y
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_VM=y
CONFIG_DEBUG_LIST=y
CONFIG_FRAME_POINTER=y
CONFIG_PROFILE_LIKELY=y
CONFIG_FORCED_INLINING=y
CONFIG_BOOT_PRINTK_DELAY=y
# CONFIG_DEBUG_SYNCHRO_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_FAULT_INJECTION=y
CONFIG_FAILSLAB=y
CONFIG_FAIL_PAGE_ALLOC=y
CONFIG_FAIL_MAKE_REQUEST=y
CONFIG_FAULT_INJECTION_DEBUG_FS=y
CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
# CONFIG_WANT_EXTRA_DEBUG_INFORMATION is not set
# CONFIG_UNWIND_INFO is not set
# CONFIG_KGDB is not set
CONFIG_EARLY_PRINTK=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_DEBUG_STACK_USAGE=y

#
# Page alloc debug is incompatible with Software Suspend on i386 #
CONFIG_DEBUG_RODATA=y
# CONFIG_4KSTACKS is not set CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_DOUBLEFAULT=y

#
# Security options
#
CONFIG_KEYS=y
CONFIG_KEYS_DEBUG_PROC_KEYS=y CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y CONFIG_SECURITY_NETWORK_XFRM=y CONFIG_SECURITY_CAPABILITIES=y
# CONFIG_SECURITY_FILE_CAPABILITIES is not set CONFIG_SECURITY_ROOTPLUG=y CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 CONFIG_SECURITY_SELINUX_DISABLE=y CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_AVC_STATS=y CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT=y CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX=y CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX_VALUE=19 CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_ABLKCIPHER=y CONFIG_CRYPTO_BLKCIPHER=y CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_WP512=y
CONFIG_CRYPTO_TGR192=y CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=y
CONFIG_CRYPTO_LRW=y
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=y CONFIG_CRYPTO_BLOWFISH=y CONFIG_CRYPTO_TWOFISH=y CONFIG_CRYPTO_TWOFISH_COMMON=y CONFIG_CRYPTO_TWOFISH_586=y CONFIG_CRYPTO_SERPENT=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_AES_586=y
CONFIG_CRYPTO_CAST5=y
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_TEA=y
CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_ANUBIS=y CONFIG_CRYPTO_DEFLATE=y CONFIG_CRYPTO_MICHAEL_MIC=y CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CAMELLIA=y
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_DEV_PADLOCK=y CONFIG_CRYPTO_DEV_PADLOCK_AES=y CONFIG_CRYPTO_DEV_PADLOCK_SHA=y CONFIG_CRYPTO_DEV_GEODE=y

#
# Library routines
#
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=y
CONFIG_CRC16=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_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=y
CONFIG_TEXTSEARCH_BM=y
CONFIG_TEXTSEARCH_FSM=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_X86_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_KTIME_SCALAR=y

#5 lore raw
Quoted 27 lines · Dave Young
Quoted 26 lines · Andrew Morton
Quoted 8 lines · On Fri, 10 Aug 2007 16:18:38 +0800 "Dave Young" <[email protected]>…

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

Quoted 8 lines

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

cc netdev

please send config

presumably nf_ct_helper_hsize is zero

Quoted 7 lines
Quoted 5 lines

I'd have thought that the same bug would be present in mainline - there's nothing in git-net.patch.

(hunts around, discovers that there's a net-2.6.24 tree now. Bah)

MY config file for test:
-----cut---

Hi,
config the CONFIG_NF_CONNTRACK_AMANDA=m, reboot , still oops, but this time the point is nf_conntrack_ftp_init, (I doubt the nf_conntrack_core is not initialized.)

boot with vga_ask and select 80x60, copyed more infomations:
---------pre oops:-----------
sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
...
nf_conntrack_14_proto_sctp4 protocol register failed
...
---------oops:----------------
divide error: 0000 [#1] SMP
EIP: 0060: [<c088477b>] EFLAGS 00010246
Process swapper
...
nf_conntrack_ftp_init
...

Code: <...>
EIP <...> helper_hash +0x1b/0x24

Regards
dave

#6 lore raw
Quoted 53 lines · Dave Young
Quoted 26 lines · Dave Young
Quoted 25 lines · Andrew Morton
Quoted 8 lines · On Fri, 10 Aug 2007 16:18:38 +0800 "Dave Young" <[email protected]>…

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

Quoted 8 lines

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

cc netdev

please send config

presumably nf_ct_helper_hsize is zero

Quoted 7 lines
Quoted 5 lines

I'd have thought that the same bug would be present in mainline - there's nothing in git-net.patch.

(hunts around, discovers that there's a net-2.6.24 tree now. Bah)

MY config file for test:
-----cut---

Hi,
config the CONFIG_NF_CONNTRACK_AMANDA=m, reboot , still oops, but this time the point is nf_conntrack_ftp_init, (I doubt the nf_conntrack_core is not initialized.)

boot with vga_ask and select 80x60, copyed more infomations:
---------pre oops:-----------
sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
...
nf_conntrack_14_proto_sctp4 protocol register failed
...
---------oops:----------------
divide error: 0000 [#1] SMP
EIP: 0060: [<c088477b>] EFLAGS 00010246
Process swapper
...
nf_conntrack_ftp_init
...

Quoted 2 lines
Code: <...>
EIP <...> helper_hash +0x1b/0x24

Does not Oops here but is broken.
Here is what I get :

modprobe nf_conntrack_amanda
WARNING: Error inserting nf_conntrack (/lib/modules/2.6.23-rc2-mm2/kernel/net/netfilter/nf_conntrack.ko): Cannot allocate memory
FATAL: Error inserting nf_conntrack_amanda (/lib/modules/2.6.23-rc2-mm2/kernel/net/netfilter/nf_conntrack_amanda.ko): Unknown symbol in module, or unknown parameter (see dmesg)

( from dmesg )

...

[ 1094.768867] nf_conntrack version 0.5.0 (10240 buckets, 40960 max)
[ 1094.769078] sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
[ 1094.780956] nf_conntrack_amanda: Unknown symbol nf_ct_expect_alloc
[ 1094.781055] nf_conntrack_amanda: Unknown symbol nf_ct_expect_put
[ 1094.781242] nf_conntrack_amanda: Unknown symbol nf_ct_expect_init
[ 1094.781371] nf_conntrack_amanda: Unknown symbol nf_conntrack_helper_unregister
[ 1094.781468] nf_conntrack_amanda: Unknown symbol __nf_ct_refresh_acct
[ 1094.781580] nf_conntrack_amanda: Unknown symbol nf_ct_expect_related
[ 1094.781673] nf_conntrack_amanda: Unknown symbol nf_conntrack_helper_register

...

Quoted 4 lines

Regards
dave
-

Gabriel

#7 lore raw

Re: 2.6.23-rc2-mm2 -- conntrack divide error

Gabriel C napsal(a):

Quoted 21 lines
Quoted 20 lines · Dave Young
Quoted 20 lines · Dave Young
Quoted 19 lines · Andrew Morton
Quoted 16 lines · On Fri, 10 Aug 2007 16:18:38 +0800 "Dave Young" <[email protected]>…

Hi,
2.6.23-rc2-mm2:
config with CONFIG_NF_CONNTRACK_AMANDA=y
boot oops:

hand copyed :
the EIP: helper_hash

backtrace:
do_basic_setup
...
nf_conntrack_amanda_init
error_code
do_vivide_error
...

Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines

cc netdev

please send config

presumably nf_ct_helper_hsize is zero

I think so. 2.6.23-rc2-mm1 seemed be OK.

Quoted 28 lines
Quoted 28 lines
Quoted 8 lines
Quoted 6 lines

I'd have thought that the same bug would be present in mainline - there's nothing in git-net.patch.

(hunts around, discovers that there's a net-2.6.24 tree now. Bah)

MY config file for test:
-----cut---

Hi,
config the CONFIG_NF_CONNTRACK_AMANDA=m, reboot , still oops, but this time the point is nf_conntrack_ftp_init, (I doubt the nf_conntrack_core is not initialized.)

boot with vga_ask and select 80x60, copyed more infomations:
---------pre oops:-----------
sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
...
nf_conntrack_14_proto_sctp4 protocol register failed
...
---------oops:----------------
divide error: 0000 [#1] SMP
EIP: 0060: [<c088477b>] EFLAGS 00010246
Process swapper
...
nf_conntrack_ftp_init
...

Quoted 4 lines
Quoted 2 lines
Code: <...>
EIP <...> helper_hash +0x1b/0x24

Does not Oops here but is broken.

My $0.02:
http://www.fi.muni.cz/~xslaby/sklad/panics/nf_oops.png
http://www.fi.muni.cz/~xslaby/sklad/panics/nf_oops.config

Signature · 2 lines
Jiri Slaby ([email protected])
Faculty of Informatics, Masaryk University
#8 lore raw
In reply to Andrew Morton
Quoted 4 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

- Various problems from 2.6.23-rc2-mm1 were fixed

I have just tried it, and it fails to build for MIPS with the following error:

CC arch/mips/kernel/asm-offsets.s
In file included from include/linux/sched.h:58,
from arch/mips/kernel/asm-offsets.c:13:
include/linux/mm_types.h:115: error: expected specifier-qualifier-list before 'pgprot_t' include/linux/mm_types.h:169: warning: 'struct file' declared inside parameter list include/linux/mm_types.h:169: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/mm_types.h:175: error: expected specifier-qualifier-list before 'pgd_t'

The trivial patch below fixes this problem.

include/linux/mm_types.h +1 -0
@@ -10,6 +10,7 @@
 #include <linux/rbtree.h>
 #include <linux/rwsem.h>
 #include <linux/completion.h>
+#include <asm/page.h>
 #include <asm/mmu.h>
 
 struct address_space;
Signature · 4 lines
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   [email protected]         | [email protected]
   `-    people.debian.org/~aurel32 | www.aurel32.net
#9 lore raw
Quoted 12 lines · Aurelien Jarno

I have just tried it, and it fails to build for MIPS with the following error:

CC arch/mips/kernel/asm-offsets.s
In file included from include/linux/sched.h:58,
from arch/mips/kernel/asm-offsets.c:13:
include/linux/mm_types.h:115: error: expected specifier-qualifier-list before 'pgprot_t' include/linux/mm_types.h:169: warning: 'struct file' declared inside parameter list include/linux/mm_types.h:169: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/mm_types.h:175: error: expected specifier-qualifier-list before 'pgd_t'

Quoted 1 line

The trivial patch below fixes this problem.

Rather than adding it to an include/linux file, where it then gets dragged in on *all* architectures, maybe we should investigate why it dies on MIPS, and fix it for *that* arch?

#10 lore raw
Quoted 13 lines · On Fri, Aug 10, 2007 at 12:40:49PM -0400, [email protected] wrote:
Quoted 12 lines · Aurelien Jarno

I have just tried it, and it fails to build for MIPS with the following error:

CC arch/mips/kernel/asm-offsets.s
In file included from include/linux/sched.h:58,
from arch/mips/kernel/asm-offsets.c:13:
include/linux/mm_types.h:115: error: expected specifier-qualifier-list before 'pgprot_t' include/linux/mm_types.h:169: warning: 'struct file' declared inside parameter list include/linux/mm_types.h:169: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/mm_types.h:175: error: expected specifier-qualifier-list before 'pgd_t'

Quoted 5 lines
Quoted 1 line

The trivial patch below fixes this problem.

Rather than adding it to an include/linux file, where it then gets dragged in on *all* architectures, maybe we should investigate why it dies on MIPS, and fix it for *that* arch?

It must be included on *all* architectures, and the architectures where asm/page.h wasn't by chance already included indirectly included by some other header don't compile.

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#11 lore raw
Quoted 3 lines · Adrian Bunk

It must be included on *all* architectures, and the architectures where asm/page.h wasn't by chance already included indirectly included by some other header don't compile.

Wow. So it happened to work by chance on *most* architectures (or at least enough so Andrew shipped it)? I wasn't expecting "MIPS was the first one to correctly barf because the header wasn't included"... :)

#12 lore raw
Quoted 9 lines · On Fri, Aug 10, 2007 at 01:21:21PM -0400, [email protected] wrote:
Quoted 3 lines · Adrian Bunk

It must be included on *all* architectures, and the architectures where asm/page.h wasn't by chance already included indirectly included by some other header don't compile.

Wow. So it happened to work by chance on *most* architectures (or at least enough so Andrew shipped it)? I wasn't expecting "MIPS was the first one to correctly barf because the header wasn't included"... :)

According to [1] it broke compilation on the following architectures:
- arm
- frv
- mips
- parisc
- v850
- xtensa

cu
Adrian

[1] http://l4x.org/k

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#13 lore raw
In reply to Andrew Morton

...

Quoted 6 lines
(quoted diff) +5 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch

Review

Quoted 10 lines
(quoted diff) +8 -0
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch
+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch
 
 sysctl cleanups

...

Getting all this on boot :

...

[  484.984331] sysctl table check failed: /dev/parport/default/timeslice .7.3.-3.1 Missing strategy
[  484.984515] sysctl table check failed: /dev/parport/default/spintime .7.3.-3.2 Missing strategy
[  485.001254] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe .7.3.1.6.1 Directory with extra1
[  485.001472] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe/timeslice .7.3.1.6.1.1 Missing strategy
[  485.042786] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe .7.3.1.6.1 Directory with extra1
[  485.042962] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe/timeslice .7.3.1.6.1.1 Missing strategy
[  485.083586] sysctl table check failed: /dev/parport/parport0/spintime .7.3.1.1 Missing strategy
[  485.083731] sysctl table check failed: /dev/parport/parport0/base-addr .7.3.1.2 Missing strategy
[  485.083878] sysctl table check failed: /dev/parport/parport0/irq .7.3.1.3 Missing strategy
[  485.084022] sysctl table check failed: /dev/parport/parport0/dma .7.3.1.4 Missing strategy
[  485.084166] sysctl table check failed: /dev/parport/parport0/modes .7.3.1.5 Missing strategy
[  485.084317] sysctl table check failed: /dev/parport/parport0/devices .7.3.1.6 Directory with extra1
[  485.084470] sysctl table check failed: /dev/parport/parport0/devices/active .7.3.1.6.-3 Missing strategy
[  485.084653] sysctl table check failed: /dev/parport/parport0/autoprobe .7.3.1.16 Missing strategy
[  485.084806] sysctl table check failed: /dev/parport/parport0/autoprobe0 .7.3.1.17 Missing strategy
[  485.084954] sysctl table check failed: /dev/parport/parport0/autoprobe1 .7.3.1.18 Missing strategy
[  485.085103] sysctl table check failed: /dev/parport/parport0/autoprobe2 .7.3.1.19 Missing strategy
[  485.085253] sysctl table check failed: /dev/parport/parport0/autoprobe3 .7.3.1.20 Missing strategy
[  485.114655] sysctl table check failed: /dev/parport/parport0/devices/lp .7.3.1.6.1 Directory with extra1
[  485.114856] sysctl table check failed: /dev/parport/parport0/devices/lp/timeslice .7.3.1.6.1.1 Missing strategy

....

Gabriel

#14 lore raw
Quoted 47 lines · Gabriel C

...

Quoted 6 lines
(quoted diff) +5 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch

Review

Quoted 10 lines
(quoted diff) +8 -0
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch
+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch
 
 sysctl cleanups

...

Getting all this on boot :

...

[  484.984331] sysctl table check failed: /dev/parport/default/timeslice .7.3.-3.1 Missing strategy
[  484.984515] sysctl table check failed: /dev/parport/default/spintime .7.3.-3.2 Missing strategy
[  485.001254] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe .7.3.1.6.1 Directory with extra1
[  485.001472] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe/timeslice .7.3.1.6.1.1 Missing strategy
[  485.042786] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe .7.3.1.6.1 Directory with extra1
[  485.042962] sysctl table check failed: /dev/parport/parport0/devices/Device ID probe/timeslice .7.3.1.6.1.1 Missing strategy
[  485.083586] sysctl table check failed: /dev/parport/parport0/spintime .7.3.1.1 Missing strategy
[  485.083731] sysctl table check failed: /dev/parport/parport0/base-addr .7.3.1.2 Missing strategy
[  485.083878] sysctl table check failed: /dev/parport/parport0/irq .7.3.1.3 Missing strategy
[  485.084022] sysctl table check failed: /dev/parport/parport0/dma .7.3.1.4 Missing strategy
[  485.084166] sysctl table check failed: /dev/parport/parport0/modes .7.3.1.5 Missing strategy
[  485.084317] sysctl table check failed: /dev/parport/parport0/devices .7.3.1.6 Directory with extra1
[  485.084470] sysctl table check failed: /dev/parport/parport0/devices/active .7.3.1.6.-3 Missing strategy
[  485.084653] sysctl table check failed: /dev/parport/parport0/autoprobe .7.3.1.16 Missing strategy
[  485.084806] sysctl table check failed: /dev/parport/parport0/autoprobe0 .7.3.1.17 Missing strategy
[  485.084954] sysctl table check failed: /dev/parport/parport0/autoprobe1 .7.3.1.18 Missing strategy
[  485.085103] sysctl table check failed: /dev/parport/parport0/autoprobe2 .7.3.1.19 Missing strategy
[  485.085253] sysctl table check failed: /dev/parport/parport0/autoprobe3 .7.3.1.20 Missing strategy
[  485.114655] sysctl table check failed: /dev/parport/parport0/devices/lp .7.3.1.6.1 Directory with extra1
[  485.114856] sysctl table check failed: /dev/parport/parport0/devices/lp/timeslice .7.3.1.6.1.1 Missing strategy
Quoted 3 lines

....

And this 2

...

[   30.046491] sysctl table check failed: /kernel/cad_pid .1.54 Missing strategy
[   30.046527] sysctl table check failed: /kernel/pty/nr .1.62.2 No data

...

#15 lore raw
Quoted 6 lines · Gabriel C

And this 2

...

[ 30.046491] sysctl table check failed: /kernel/cad_pid .1.54 Missing strategy
[   30.046527] sysctl table check failed: /kernel/pty/nr .1.62.2 No data

...

Yep.

The cad_pid case seems to be a real bug. The pty/nr is a race you can't exploit in practice.

I haven't gotten to either of those yet.

Eric

#16 lore raw
In reply to Gabriel C

Some new warnings here :

...

In file included from include/linux/blkdev.h:17,

                 from kernel/sched.c:45:

include/linux/bsg.h:67: warning: 'struct request_queue' declared inside parameter list include/linux/bsg.h:67: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/bsg.h:71: warning: 'struct request_queue' declared inside parameter list

...

In file included from include/linux/blkdev.h:17,

                 from mm/filemap.c:29:

include/linux/bsg.h:67: warning: 'struct request_queue' declared inside parameter list include/linux/bsg.h:67: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/bsg.h:71: warning: 'struct request_queue' declared inside parameter list

...

Some more of these , all from bsg.h:{67,71}

config there :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

author maintainer
#17 lore raw
Quoted 5 lines · On Fri, 10 Aug 2007 14:35:01 +0200 Gabriel C <[email protected]> wrote:

In file included from include/linux/blkdev.h:17,

                 from kernel/sched.c:45:

include/linux/bsg.h:67: warning: 'struct request_queue' declared inside parameter list include/linux/bsg.h:67: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/bsg.h:71: warning: 'struct request_queue' declared inside parameter list

Thanks, I'll fix that up.

#18 lore raw
Quoted 10 lines · Andrew Morton
Quoted 5 lines · On Fri, 10 Aug 2007 14:35:01 +0200 Gabriel C <[email protected]> wrote:

In file included from include/linux/blkdev.h:17,

                 from kernel/sched.c:45:

include/linux/bsg.h:67: warning: 'struct request_queue' declared inside parameter list include/linux/bsg.h:67: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/bsg.h:71: warning: 'struct request_queue' declared inside parameter list

Thanks, I'll fix that up.

I just realized this problem exists in mainline too , introduced by this commit :

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a4ee0df8b3d007f0d685d38a56dc0b91e01aaaf7;hp=2cd614c8732172524c36cd5245620338928062b6

#19 lore raw
In reply to Gabriel C

Some new section mismatch warnings:

...

MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x17e): Section mismatch: reference to .init.text:initialize_secondary (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x8c82): Section mismatch: reference to .init.text:register_cpu (between 'arch_register_cpu' and 'alternatives_smp_switch')
WARNING: vmlinux.o(.text+0x984d): Section mismatch: reference to .init.data:disable_pse (between 'identify_cpu' and 'identify_secondary_cpu')
WARNING: vmlinux.o(.text+0xac59): Section mismatch: reference to .init.text:calibrate_delay (between 'init_cyrix' and 'init_nsc')
WARNING: vmlinux.o(.text+0xb4ac): Section mismatch: reference to .init.text:select_idle_routine (between 'init_intel' and 'init_intel_cacheinfo')
WARNING: vmlinux.o(.text+0xe49c): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xe881): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xecd8): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xecdd): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xf055): Section mismatch: reference to .init.text:setup_local_APIC (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf05f): Section mismatch: reference to .init.text:calibrate_delay (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf08e): Section mismatch: reference to .init.text:setup_secondary_APIC_clock (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0x1fe6e): Section mismatch: reference to .init.text:idle_regs (between 'fork_idle' and '__put_task_struct')
WARNING: vmlinux.o(.text+0x2717a): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x272df): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x51df3): Section mismatch: reference to .init.text:start_cpu_timer (between 'vmstat_cpuup_callback' and 'refresh_cpu_vm_stats')
WARNING: vmlinux.o(.text+0xcac51): Section mismatch: reference to .init.text:pcibios_fixup_bus (between 'pci_scan_child_bus' and 'pci_scan_bus_parented')
WARNING: vmlinux.o(.data+0x5480): Section mismatch: reference to .init.text:workqueue_cpu_callback (between 'workqueue_cpu_callback_nb.12121' and 'workqueue_mutex')
WARNING: vmlinux.o(.data+0x90c4): Section mismatch: reference to .init.text:cpu_callback (between 'cpu_callback_nb.18502' and 'shrinker_rwsem')
WARNING: vmlinux.o(.data+0x14d84): Section mismatch: reference to .init.text:pci_ite887x_init (between 'pci_serial_quirks' and 'serial_pci_tbl')

...

config :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

#20 lore raw

PATCH 1/1 Fix some section mismatch warnings

Quoted 27 lines · Gabriel C

Some new section mismatch warnings:

...

MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x17e): Section mismatch: reference to .init.text:initialize_secondary (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x8c82): Section mismatch: reference to .init.text:register_cpu (between 'arch_register_cpu' and 'alternatives_smp_switch')
WARNING: vmlinux.o(.text+0x984d): Section mismatch: reference to .init.data:disable_pse (between 'identify_cpu' and 'identify_secondary_cpu')
WARNING: vmlinux.o(.text+0xac59): Section mismatch: reference to .init.text:calibrate_delay (between 'init_cyrix' and 'init_nsc')
WARNING: vmlinux.o(.text+0xb4ac): Section mismatch: reference to .init.text:select_idle_routine (between 'init_intel' and 'init_intel_cacheinfo')
WARNING: vmlinux.o(.text+0xe49c): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xe881): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xecd8): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xecdd): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xf055): Section mismatch: reference to .init.text:setup_local_APIC (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf05f): Section mismatch: reference to .init.text:calibrate_delay (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf08e): Section mismatch: reference to .init.text:setup_secondary_APIC_clock (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0x1fe6e): Section mismatch: reference to .init.text:idle_regs (between 'fork_idle' and '__put_task_struct')
WARNING: vmlinux.o(.text+0x2717a): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x272df): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x51df3): Section mismatch: reference to .init.text:start_cpu_timer (between 'vmstat_cpuup_callback' and 'refresh_cpu_vm_stats')
WARNING: vmlinux.o(.text+0xcac51): Section mismatch: reference to .init.text:pcibios_fixup_bus (between 'pci_scan_child_bus' and 'pci_scan_bus_parented')
WARNING: vmlinux.o(.data+0x5480): Section mismatch: reference to .init.text:workqueue_cpu_callback (between 'workqueue_cpu_callback_nb.12121' and 'workqueue_mutex')
WARNING: vmlinux.o(.data+0x90c4): Section mismatch: reference to .init.text:cpu_callback (between 'cpu_callback_nb.18502' and 'shrinker_rwsem')
WARNING: vmlinux.o(.data+0x14d84): Section mismatch: reference to .init.text:pci_ite887x_init (between 'pci_serial_quirks' and 'serial_pci_tbl')

Quoted 7 lines

...

config :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

This patch fixes the .init.data ones

---

arch/i386/kernel/setup.c +1 -1
diff -Nurp linux-2.6.23-rc2-mm2/arch/i386/kernel/setup.c linux-2.6.23-rc2-mm2-p/arch/i386/kernel/setup.c
@@ -68,7 +68,7 @@
    address, and must not be in the .bss segment! */
 unsigned long init_pg_tables_end __initdata = ~0UL;
 
-int disable_pse __devinitdata = 0;
+int disable_pse __cpuinitdata = 0;
 
 /*
  * Machine setup..
arch/i386/kernel/smpboot.c +2 -2
diff -Nurp linux-2.6.23-rc2-mm2/arch/i386/kernel/smpboot.c linux-2.6.23-rc2-mm2-p/arch/i386/kernel/smpboot.c
@@ -60,7 +60,7 @@
 #include <asm/mtrr.h>
 
 /* Set if we find a B stepping CPU */
-static int __devinitdata smp_b_stepping;
+static int __cpuinitdata smp_b_stepping;
 
 /* Number of siblings per CPU package */
 int smp_num_siblings = 1;
@@ -736,7 +736,7 @@ static inline int alloc_cpu_id(void)
 }
 
 #ifdef CONFIG_HOTPLUG_CPU
-static struct task_struct * __devinitdata cpu_idle_tasks[NR_CPUS];
+static struct task_struct * __cpuinitdata cpu_idle_tasks[NR_CPUS];
 static inline struct task_struct * alloc_idle_task(int cpu)
 {
 	struct task_struct *idle;
kernel/timer.c +1 -1
diff -Nurp linux-2.6.23-rc2-mm2/kernel/timer.c linux-2.6.23-rc2-mm2-p/kernel/timer.c
@@ -1216,7 +1216,7 @@ static int __devinit init_timers_cpu(int
 {
 	int j;
 	tvec_base_t *base;
-	static char __devinitdata tvec_base_done[NR_CPUS];
+	static char __cpuinitdata tvec_base_done[NR_CPUS];
 
 	if (!tvec_base_done[cpu]) {
 		static char boot_done;
author maintainer
#21 lore raw

Re: [PATCH -mm] Fix some section mismatch warnings

Quoted 81 lines · On Fri, 10 Aug 2007 15:20:30 +0200 Gabriel C <[email protected]> wrote:
Quoted 27 lines · Gabriel C

Some new section mismatch warnings:

...

MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x17e): Section mismatch: reference to .init.text:initialize_secondary (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x8c82): Section mismatch: reference to .init.text:register_cpu (between 'arch_register_cpu' and 'alternatives_smp_switch')
WARNING: vmlinux.o(.text+0x984d): Section mismatch: reference to .init.data:disable_pse (between 'identify_cpu' and 'identify_secondary_cpu')
WARNING: vmlinux.o(.text+0xac59): Section mismatch: reference to .init.text:calibrate_delay (between 'init_cyrix' and 'init_nsc')
WARNING: vmlinux.o(.text+0xb4ac): Section mismatch: reference to .init.text:select_idle_routine (between 'init_intel' and 'init_intel_cacheinfo')
WARNING: vmlinux.o(.text+0xe49c): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xe881): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xecd8): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xecdd): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xf055): Section mismatch: reference to .init.text:setup_local_APIC (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf05f): Section mismatch: reference to .init.text:calibrate_delay (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf08e): Section mismatch: reference to .init.text:setup_secondary_APIC_clock (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0x1fe6e): Section mismatch: reference to .init.text:idle_regs (between 'fork_idle' and '__put_task_struct')
WARNING: vmlinux.o(.text+0x2717a): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x272df): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x51df3): Section mismatch: reference to .init.text:start_cpu_timer (between 'vmstat_cpuup_callback' and 'refresh_cpu_vm_stats')
WARNING: vmlinux.o(.text+0xcac51): Section mismatch: reference to .init.text:pcibios_fixup_bus (between 'pci_scan_child_bus' and 'pci_scan_bus_parented')
WARNING: vmlinux.o(.data+0x5480): Section mismatch: reference to .init.text:workqueue_cpu_callback (between 'workqueue_cpu_callback_nb.12121' and 'workqueue_mutex')
WARNING: vmlinux.o(.data+0x90c4): Section mismatch: reference to .init.text:cpu_callback (between 'cpu_callback_nb.18502' and 'shrinker_rwsem')
WARNING: vmlinux.o(.data+0x14d84): Section mismatch: reference to .init.text:pci_ite887x_init (between 'pci_serial_quirks' and 'serial_pci_tbl')

Quoted 7 lines

...

config :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

This patch fixes the .init.data ones

---

diff -Nurp linux-2.6.23-rc2-mm2/arch/i386/kernel/setup.c linux-2.6.23-rc2-mm2-p/arch/i386/kernel/setup.c

arch/i386/kernel/setup.c +1 -1
@@ -68,7 +68,7 @@
    address, and must not be in the .bss segment! */
 unsigned long init_pg_tables_end __initdata = ~0UL;
 
-int disable_pse __devinitdata = 0;
+int disable_pse __cpuinitdata = 0;
 
 /*
  * Machine setup..

diff -Nurp linux-2.6.23-rc2-mm2/arch/i386/kernel/smpboot.c linux-2.6.23-rc2-mm2-p/arch/i386/kernel/smpboot.c

arch/i386/kernel/smpboot.c +2 -2
@@ -60,7 +60,7 @@
 #include <asm/mtrr.h>
 
 /* Set if we find a B stepping CPU */
-static int __devinitdata smp_b_stepping;
+static int __cpuinitdata smp_b_stepping;
 
 /* Number of siblings per CPU package */
 int smp_num_siblings = 1;
@@ -736,7 +736,7 @@ static inline int alloc_cpu_id(void)
 }
 
 #ifdef CONFIG_HOTPLUG_CPU
-static struct task_struct * __devinitdata cpu_idle_tasks[NR_CPUS];
+static struct task_struct * __cpuinitdata cpu_idle_tasks[NR_CPUS];
 static inline struct task_struct * alloc_idle_task(int cpu)
 {
 	struct task_struct *idle;

diff -Nurp linux-2.6.23-rc2-mm2/kernel/timer.c linux-2.6.23-rc2-mm2-p/kernel/timer.c

kernel/timer.c static int __devinit init_timers_cpu(int · line 1222

Quoted 8 lines
kernel/timer.c +1 -1
@@ -1216,7 +1216,7 @@ static int __devinit init_timers_cpu(int
 {
 	int j;
 	tvec_base_t *base;
-	static char __devinitdata tvec_base_done[NR_CPUS];
+	static char __cpuinitdata tvec_base_done[NR_CPUS];
 
 	if (!tvec_base_done[cpu]) {
 		static char boot_done;

This patch causes more work than it should, really.

- it's not clear which of the above warnings this patch addresses

- there is no explanation telling us where these references come from

- the patch purports to fix three unrelated things.

So, ideally we'd have seen three separate patches, each one accompanied by an explanation of why the warning arose and how it was fixed.

I'm left to pick through this lot wondering which bits are applicable to mainline and whether I need to split it up or what.

I don't understand the init_timers_cpu() change. tvec_base_done[] is referred to only from init_timers_cpu(), and init_timers_cpu() is __devinit?

#22 lore raw

Section mismatch warnings ( Re: 2.6.23-rc2-mm2 )

In reply to Gabriel C
Quoted 27 lines · Gabriel C

Some new section mismatch warnings:

...

MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x17e): Section mismatch: reference to .init.text:initialize_secondary (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
WARNING: vmlinux.o(.text+0x8c82): Section mismatch: reference to .init.text:register_cpu (between 'arch_register_cpu' and 'alternatives_smp_switch')
WARNING: vmlinux.o(.text+0x984d): Section mismatch: reference to .init.data:disable_pse (between 'identify_cpu' and 'identify_secondary_cpu')
WARNING: vmlinux.o(.text+0xac59): Section mismatch: reference to .init.text:calibrate_delay (between 'init_cyrix' and 'init_nsc')
WARNING: vmlinux.o(.text+0xb4ac): Section mismatch: reference to .init.text:select_idle_routine (between 'init_intel' and 'init_intel_cacheinfo')
WARNING: vmlinux.o(.text+0xe49c): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xe881): Section mismatch: reference to .init.data:cpu_idle_tasks (between 'do_boot_cpu' and 'do_warm_boot_cpu')
WARNING: vmlinux.o(.text+0xecd8): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xecdd): Section mismatch: reference to .init.data:smp_b_stepping (between 'smp_store_cpu_info' and '__cpu_die')
WARNING: vmlinux.o(.text+0xf055): Section mismatch: reference to .init.text:setup_local_APIC (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf05f): Section mismatch: reference to .init.text:calibrate_delay (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0xf08e): Section mismatch: reference to .init.text:setup_secondary_APIC_clock (between 'start_secondary' and 'check_tsc_warp')
WARNING: vmlinux.o(.text+0x1fe6e): Section mismatch: reference to .init.text:idle_regs (between 'fork_idle' and '__put_task_struct')
WARNING: vmlinux.o(.text+0x2717a): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x272df): Section mismatch: reference to .init.data:tvec_base_done.16336 (between 'timer_cpu_notify' and 'run_timer_softirq')
WARNING: vmlinux.o(.text+0x51df3): Section mismatch: reference to .init.text:start_cpu_timer (between 'vmstat_cpuup_callback' and 'refresh_cpu_vm_stats')
WARNING: vmlinux.o(.text+0xcac51): Section mismatch: reference to .init.text:pcibios_fixup_bus (between 'pci_scan_child_bus' and 'pci_scan_bus_parented')
WARNING: vmlinux.o(.data+0x5480): Section mismatch: reference to .init.text:workqueue_cpu_callback (between 'workqueue_cpu_callback_nb.12121' and 'workqueue_mutex')
WARNING: vmlinux.o(.data+0x90c4): Section mismatch: reference to .init.text:cpu_callback (between 'cpu_callback_nb.18502' and 'shrinker_rwsem')
WARNING: vmlinux.o(.data+0x14d84): Section mismatch: reference to .init.text:pci_ite887x_init (between 'pci_serial_quirks' and 'serial_pci_tbl')

Quoted 6 lines

...

config :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

Some more

...

WARNING: vmlinux.o(.text+0xce2ce): Section mismatch: reference to .init.data:lowhsync (between 'pm2fb_set_par' and 'pm2fb_pan_display')
WARNING: vmlinux.o(.text+0xce2e8): Section mismatch: reference to .init.data:lowvsync (between 'pm2fb_set_par' and 'pm2fb_pan_display')
WARNING: vmlinux.o(.text+0x180d3b): Section mismatch: reference to .init.data: (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.text+0x180e1d): Section mismatch: reference to .init.data: (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.text+0x180e25): Section mismatch: reference to .init.data:iTCO_chipset_info (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.data+0xa74f0): Section mismatch: reference to .init.text:ioat_probe (between 'ioat_pci_drv' and 'ioat_pci_tbl')

...

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-28

author maintainer
#23 lore raw

Re: Section mismatch warnings ( Re: 2.6.23-rc2-mm2 )

Quoted 11 lines · On Fri, 10 Aug 2007 21:04:53 +0200 Gabriel C <[email protected]> wrote:

Some more

...

WARNING: vmlinux.o(.text+0xce2ce): Section mismatch: reference to .init.data:lowhsync (between 'pm2fb_set_par' and 'pm2fb_pan_display')
WARNING: vmlinux.o(.text+0xce2e8): Section mismatch: reference to .init.data:lowvsync (between 'pm2fb_set_par' and 'pm2fb_pan_display')
WARNING: vmlinux.o(.text+0x180d3b): Section mismatch: reference to .init.data: (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.text+0x180e1d): Section mismatch: reference to .init.data: (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.text+0x180e25): Section mismatch: reference to .init.data:iTCO_chipset_info (between 'iTCO_wdt_probe' and 'supermicro_new_unlock_watchdog')
WARNING: vmlinux.o(.data+0xa74f0): Section mismatch: reference to .init.text:ioat_probe (between 'ioat_pci_drv' and 'ioat_pci_tbl')

Quoted 3 lines

...

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-28

(suitable cc's added)

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/

#24 lore raw
In reply to Gabriel C

Getting that with gcc 4.2.1 :

...

  CC      drivers/usb/host/ohci-hcd.o
  CC      drivers/usb/misc/usbled.o
  CC      drivers/usb/core/driver.o

In file included from drivers/usb/host/ohci-hcd.c:86:
drivers/usb/host/ohci-dbg.c: In function 'show_registers':
drivers/usb/host/ohci-dbg.c:620: warning: the address of 'next' will always evaluate as 'true' drivers/usb/host/ohci-dbg.c:639: warning: the address of 'next' will always evaluate as 'true'

...

config : http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-5

#25 lore raw
Quoted 5 lines · Gabriel C

Getting that with gcc 4.2.1 :

drivers/usb/host/ohci-dbg.c: In function 'show_registers':
drivers/usb/host/ohci-dbg.c:620: warning: the address of 'next' will always evaluate as 'true' drivers/usb/host/ohci-dbg.c:639: warning: the address of 'next' will always evaluate as 'true'

Seems like a pretty annoying warning to have added ... the relevant test *expects* to have two constant branches, where the compiler optimizes one out of existence.

Does this patch get rid of it?

---
 drivers/usb/host/ohci-dbg.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/usb/host/ohci-dbg.c +1 -1
@@ -74,7 +74,7 @@ urb_print (struct urb * urb, char * str,
 
 #define ohci_dbg_sw(ohci, next, size, format, arg...) \
 	do { \
-	if (next) { \
+	if (next != NULL) { \
 		unsigned s_len; \
 		s_len = scnprintf (*next, *size, format, ## arg ); \
 		*size -= s_len; *next += s_len; \
#26 lore raw
Quoted 7 lines · David Brownell
Quoted 5 lines · Gabriel C

Getting that with gcc 4.2.1 :

drivers/usb/host/ohci-dbg.c: In function 'show_registers':
drivers/usb/host/ohci-dbg.c:620: warning: the address of 'next' will always evaluate as 'true' drivers/usb/host/ohci-dbg.c:639: warning: the address of 'next' will always evaluate as 'true'

Quoted 6 lines

Seems like a pretty annoying warning to have added ... the relevant test *expects* to have two constant branches, where the compiler optimizes one out of existence.

Does this patch get rid of it?

Yes it does.

Quoted 16 lines
---
 drivers/usb/host/ohci-dbg.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/usb/host/ohci-dbg.c +1 -1
@@ -74,7 +74,7 @@ urb_print (struct urb * urb, char * str,
 
 #define ohci_dbg_sw(ohci, next, size, format, arg...) \
 	do { \
-	if (next) { \
+	if (next != NULL) { \
 		unsigned s_len; \
 		s_len = scnprintf (*next, *size, format, ## arg ); \
 		*size -= s_len; *next += s_len; \
#27 lore raw
In reply to Gabriel C
Quoted 66 lines · Gabriel C

...

Review

Quoted 13 lines
(quoted diff) +12 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch

+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch

Quoted 3 lines

sysctl cleanups

...

Getting all this on boot :

...

[ 484.984331] sysctl table check failed: /dev/parport/default/timeslice
.7.3.-3.1 Missing strategy
[ 484.984515] sysctl table check failed: /dev/parport/default/spintime .7.3.-3.2
Missing strategy
[ 485.001254] sysctl table check failed: /dev/parport/parport0/devices/Device ID
probe .7.3.1.6.1 Directory with extra1
[ 485.001472] sysctl table check failed: /dev/parport/parport0/devices/Device ID
probe/timeslice .7.3.1.6.1.1 Missing strategy
[ 485.042786] sysctl table check failed: /dev/parport/parport0/devices/Device ID
probe .7.3.1.6.1 Directory with extra1
[ 485.042962] sysctl table check failed: /dev/parport/parport0/devices/Device ID
probe/timeslice .7.3.1.6.1.1 Missing strategy
[ 485.083586] sysctl table check failed: /dev/parport/parport0/spintime .7.3.1.1
Missing strategy
[ 485.083731] sysctl table check failed: /dev/parport/parport0/base-addr
.7.3.1.2 Missing strategy
[ 485.083878] sysctl table check failed: /dev/parport/parport0/irq .7.3.1.3
Missing strategy
[ 485.084022] sysctl table check failed: /dev/parport/parport0/dma .7.3.1.4
Missing strategy
[ 485.084166] sysctl table check failed: /dev/parport/parport0/modes .7.3.1.5
Missing strategy
[ 485.084317] sysctl table check failed: /dev/parport/parport0/devices .7.3.1.6
Directory with extra1
[ 485.084470] sysctl table check failed: /dev/parport/parport0/devices/active
.7.3.1.6.-3 Missing strategy
[ 485.084653] sysctl table check failed: /dev/parport/parport0/autoprobe
.7.3.1.16 Missing strategy
[ 485.084806] sysctl table check failed: /dev/parport/parport0/autoprobe0
.7.3.1.17 Missing strategy
[ 485.084954] sysctl table check failed: /dev/parport/parport0/autoprobe1
.7.3.1.18 Missing strategy
[ 485.085103] sysctl table check failed: /dev/parport/parport0/autoprobe2
.7.3.1.19 Missing strategy
[ 485.085253] sysctl table check failed: /dev/parport/parport0/autoprobe3
.7.3.1.20 Missing strategy
[ 485.114655] sysctl table check failed: /dev/parport/parport0/devices/lp
.7.3.1.6.1 Directory with extra1
[ 485.114856] sysctl table check failed:
Quoted 1 line

/dev/parport/parport0/devices/lp/timeslice .7.3.1.6.1.1 Missing strategy

Hmm. Thanks it doesn't like I had the parport code enabled in my test kernel. With a little luck it looks like we can just nuke the binary sysctl interface here. And get the /proc/sys interface working again.

Eric

#28 lore raw

PATCH 1/1 kernel/sysctl_check.c must #include <linux/string.h>

In reply to Andrew Morton
Quoted 9 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...

(quoted diff) +6 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch

Review

Quoted 10 lines
(quoted diff) +7 -0
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch
+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch
 
 sysctl cleanups
...

This patch fixes the following compile error:

<-- snip -->

...
CC kernel/sysctl_check.o
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc2-mm2/kernel/sysctl_check.c: In function 'sysctl_binary_lookup':
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc2-mm2/kernel/sysctl_check.c:1303: error: implicit declaration of function 'strcmp' make[2]: *** [kernel/sysctl_check.o] Error 1

<-- snip -->

---

kernel/sysctl_check.c +1 -0
@@ -3,6 +3,7 @@
 #include "../arch/s390/appldata/appldata.h"
 #include "../fs/xfs/linux-2.6/xfs_sysctl.h"
 #include <linux/sunrpc/debug.h>
+#include <linux/string.h>
 #include <net/ip_vs.h>
 
 struct trans_ctl_table {
#29 lore raw

Re: [-mm patch] kernel/sysctl_check.c must #include <linux/string.h>

Quoted 42 lines · Adrian Bunk
Quoted 6 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...

(quoted diff) +2 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch

Review

Quoted 10 lines
(quoted diff) +10 -0
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch

+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch

Quoted 3 lines

sysctl cleanups
...

This patch fixes the following compile error:

<-- snip -->

...
CC kernel/sysctl_check.o
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc2-mm2/kernel/sysctl_check.c: In function 'sysctl_binary_lookup':
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc2-mm2/kernel/sysctl_check.c:1303:
error: implicit declaration of function 'strcmp'
make[2]: *** [kernel/sysctl_check.o] Error 1

<-- snip -->

---

kernel/sysctl_check.c line 9

Quoted 7 lines
kernel/sysctl_check.c +1 -0
@@ -3,6 +3,7 @@
 #include "../arch/s390/appldata/appldata.h"
 #include "../fs/xfs/linux-2.6/xfs_sysctl.h"
 #include <linux/sunrpc/debug.h>
+#include <linux/string.h>
 #include <net/ip_vs.h>
 
 struct trans_ctl_table {

Thanks. This problem doesn't happen on x86_64 for some reason so I missed that.

Eric

#30 lore raw
In reply to Andrew Morton

Hi,

Andrew Morton pisze:

Quoted 2 lines

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

[..]

Quoted 5 lines
(quoted diff) +5 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch

Review

Quoted 10 lines
(quoted diff) +8 -0
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch
+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch
 
 sysctl cleanups

There is something wrong with sysctl

[   25.120741] sysctl_check_dir: failed: /kernel  ref: /kernel .1
[   25.127102] sysctl table check failed: /kernel  Writable sysctl directory
[   25.134157] sysctl table check failed: /kernel  Inconsistent directory names
[   25.141477] sysctl table check failed: /kernel/sched_domain  Writable sysctl directory
[   25.149755] sysctl table check failed: /kernel/sched_domain/cpu0  Writable sysctl directory
[   25.158529] sysctl table check failed: /kernel/sched_domain/cpu0/domain0  Writable sysctl directory
[   25.168102] sysctl table check failed: /kernel/sched_domain/cpu1  Writable sysctl directory
[   25.176862] sysctl table check failed: /kernel/sched_domain/cpu1/domain0  Writable sysctl directory

Eric?

Regards,
Michal

Signature · 2 lines
LOG
http://www.stardust.webpages.pl/log/
#31 lore raw
Quoted 20 lines · Michal Piotrowski

Hi,

Andrew Morton pisze:

Quoted 2 lines

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

[..]

Quoted 14 lines
(quoted diff) +13 -0
+sysctl-core-stop-using-the-unnecessary-ctl_table-typedef.patch
+sysctl-factor-out-sysctl_data.patch
+sysctl-error-on-bad-sysctl-tables.patch
+sysctl-update-sysctl_check_table.patch
+sysct-mqueue-remove-the-binary-sysctl-numbers.patch
+sysctl-remove-binary-sysctl-support-where-it-clearly-doesnt-work.patch
+sysctl-fix-neighbour-table-sysctls.patch
+sysctl-ipv6-route-flushing-kill-binary-path.patch
+sysctl-remove-broken-sunrpc-debug-binary-sysctls.patch
+sysctl-x86_64-remove-unnecessary-binary-paths.patch
+sysctl-remove-broken-cdrom-binary-sysctls.patch
+sysctl-ipv4-remove-binary-sysctl-paths-where-they-are-broken.patch
+sysctl-remove-the-binary-interface-for-aio-nr-aio-max-nr-acpi_video_flags.patch
Quoted 3 lines
Quoted 1 line

sysctl cleanups

There is something wrong with sysctl

Ah, it is intended.
sysctl-error-on-bad-sysctl-tables.patch

Quoted 10 lines
[   25.120741] sysctl_check_dir: failed: /kernel  ref: /kernel .1
[   25.127102] sysctl table check failed: /kernel  Writable sysctl directory
[   25.134157] sysctl table check failed: /kernel  Inconsistent directory names
[   25.141477] sysctl table check failed: /kernel/sched_domain  Writable sysctl directory
[   25.149755] sysctl table check failed: /kernel/sched_domain/cpu0  Writable sysctl directory
[   25.158529] sysctl table check failed: /kernel/sched_domain/cpu0/domain0  Writable sysctl directory
[   25.168102] sysctl table check failed: /kernel/sched_domain/cpu1  Writable sysctl directory
[   25.176862] sysctl table check failed: /kernel/sched_domain/cpu1/domain0  Writable sysctl directory
Quoted 2 lines

Eric?

Regards,
Michal

Signature · 2 lines
LOG
http://www.stardust.webpages.pl/log/
#32 lore raw
Quoted 2 lines · Michal Piotrowski

Ah, it is intended.
sysctl-error-on-bad-sysctl-tables.patch

Yes. I'm trying to flush out the bad sysctl table entries and prevent us from adding new ones.

Quoted 5 lines
Quoted 4 lines
[   25.120741] sysctl_check_dir: failed: /kernel  ref: /kernel .1
[   25.127102] sysctl table check failed: /kernel  Writable sysctl directory
[ 25.134157] sysctl table check failed: /kernel Inconsistent directory names
[ 25.141477] sysctl table check failed: /kernel/sched_domain Writable sysctl

directory

Quoted 10 lines
Quoted 1 line
[ 25.149755] sysctl table check failed: /kernel/sched_domain/cpu0 Writable

sysctl directory

Quoted 1 line
[ 25.158529] sysctl table check failed: /kernel/sched_domain/cpu0/domain0

Writable sysctl directory

Quoted 1 line
[ 25.168102] sysctl table check failed: /kernel/sched_domain/cpu1 Writable

sysctl directory

Quoted 1 line
[ 25.176862] sysctl table check failed: /kernel/sched_domain/cpu1/domain0

Writable sysctl directory

Quoted 2 lines

Eric?

Yes. For the sched debug case I sent Ingo and friends but apparently other changes in Ingos tree kept it from applying and Andrew dropped it. So instead the code now screams at you and refuses to register Ingo sysctl table.

Eric

#33 lore raw
Quoted 4 lines · Eric W. Biederman

Yes. For the sched debug case I sent Ingo and friends but apparently other changes in Ingos tree kept it from applying and Andrew dropped it. So instead the code now screams at you and refuses to register Ingo sysctl table.

the commit below is now upstream - is your patch still needed?

Ingo

------------>
commit e0361851e5647cdd62fd5c367df5d7e145769d04

Author: Alexey Dobriyan <[email protected]>
Date:   Thu Aug 9 11:16:46 2007 +0200

sched: remove binary sysctls from kernel.sched_domain

kernel.sched_domain hierarchy is under CTL_UNNUMBERED and thus unreachable to sysctl(2). Generating .ctl_number's in such situation is not useful.

kernel/sched.c +21 -17
index 49f5b28..85b9311 100644
@@ -5217,12 +5217,19 @@ static void migrate_dead_tasks(unsigned int dead_cpu)
 #if defined(CONFIG_SCHED_DEBUG) && defined(CONFIG_SYSCTL)
 
 static struct ctl_table sd_ctl_dir[] = {
-	{CTL_UNNUMBERED, "sched_domain", NULL, 0, 0755, NULL, },
+	{
+		.procname	= "sched_domain",
+		.mode		= 0755,
+	},
 	{0,},
 };
 
 static struct ctl_table sd_ctl_root[] = {
-	{CTL_UNNUMBERED, "kernel", NULL, 0, 0755, sd_ctl_dir, },
+	{
+		.procname	= "kernel",
+		.mode		= 0755,
+		.child		= sd_ctl_dir,
+	},
 	{0,},
 };
 
@@ -5238,11 +5245,10 @@ static struct ctl_table *sd_alloc_ctl_entry(int n)
 }
 
 static void
-set_table_entry(struct ctl_table *entry, int ctl_name,
+set_table_entry(struct ctl_table *entry,
 		const char *procname, void *data, int maxlen,
 		mode_t mode, proc_handler *proc_handler)
 {
-	entry->ctl_name = ctl_name;
 	entry->procname = procname;
 	entry->data = data;
 	entry->maxlen = maxlen;
@@ -5255,28 +5261,28 @@ sd_alloc_ctl_domain_table(struct sched_domain *sd)
 {
 	struct ctl_table *table = sd_alloc_ctl_entry(14);
 
-	set_table_entry(&table[0], 1, "min_interval", &sd->min_interval,
+	set_table_entry(&table[0], "min_interval", &sd->min_interval,
 		sizeof(long), 0644, proc_doulongvec_minmax);
-	set_table_entry(&table[1], 2, "max_interval", &sd->max_interval,
+	set_table_entry(&table[1], "max_interval", &sd->max_interval,
 		sizeof(long), 0644, proc_doulongvec_minmax);
-	set_table_entry(&table[2], 3, "busy_idx", &sd->busy_idx,
+	set_table_entry(&table[2], "busy_idx", &sd->busy_idx,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[3], 4, "idle_idx", &sd->idle_idx,
+	set_table_entry(&table[3], "idle_idx", &sd->idle_idx,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[4], 5, "newidle_idx", &sd->newidle_idx,
+	set_table_entry(&table[4], "newidle_idx", &sd->newidle_idx,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[5], 6, "wake_idx", &sd->wake_idx,
+	set_table_entry(&table[5], "wake_idx", &sd->wake_idx,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[6], 7, "forkexec_idx", &sd->forkexec_idx,
+	set_table_entry(&table[6], "forkexec_idx", &sd->forkexec_idx,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[7], 8, "busy_factor", &sd->busy_factor,
+	set_table_entry(&table[7], "busy_factor", &sd->busy_factor,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[8], 9, "imbalance_pct", &sd->imbalance_pct,
+	set_table_entry(&table[8], "imbalance_pct", &sd->imbalance_pct,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[10], 11, "cache_nice_tries",
+	set_table_entry(&table[10], "cache_nice_tries",
 		&sd->cache_nice_tries,
 		sizeof(int), 0644, proc_dointvec_minmax);
-	set_table_entry(&table[12], 13, "flags", &sd->flags,
+	set_table_entry(&table[12], "flags", &sd->flags,
 		sizeof(int), 0644, proc_dointvec_minmax);
 
 	return table;
@@ -5296,7 +5302,6 @@ static ctl_table *sd_alloc_ctl_cpu_table(int cpu)
 	i = 0;
 	for_each_domain(cpu, sd) {
 		snprintf(buf, 32, "domain%d", i);
-		entry->ctl_name = i + 1;
 		entry->procname = kstrdup(buf, GFP_KERNEL);
 		entry->mode = 0755;
 		entry->child = sd_alloc_ctl_domain_table(sd);
@@ -5317,7 +5322,6 @@ static void init_sched_domain_sysctl(void)
 
 	for (i = 0; i < cpu_num; i++, entry++) {
 		snprintf(buf, 32, "cpu%d", i);
-		entry->ctl_name = i + 1;
 		entry->procname = kstrdup(buf, GFP_KERNEL);
 		entry->mode = 0755;
 		entry->child = sd_alloc_ctl_cpu_table(i);
author maintainer
#34 lore raw
Quoted 3 lines · On Fri, 10 Aug 2007 18:05:19 +0200 Ingo Molnar <[email protected]> wrote:
Quoted 3 lines

Yes. For the sched debug case I sent Ingo and friends but apparently other changes in Ingos tree kept it from applying and Andrew dropped it.

No, I know nothing about such a patch.

Quoted 4 lines

So instead the code now screams at you and refuses to register

Quoted 1 line

Ingo sysctl table.

the commit below is now upstream

and it's in rc2-mm2.

Quoted 1 line

- is your patch still needed?

Something's needed ;)

#35 lore raw
In reply to Ingo Molnar
Quoted 8 lines · Ingo Molnar
Quoted 4 lines · Eric W. Biederman

Yes. For the sched debug case I sent Ingo and friends but apparently other changes in Ingos tree kept it from applying and Andrew dropped it. So instead the code now screams at you and refuses to register Ingo sysctl table.

the commit below is now upstream - is your patch still needed?

Ok. I missed that. Duh. I just saw Andrews drop message.

This looks like Alexey respun my patch, or else we were thinking on parallel paths. Probably parallel given Alexey's dislike of using the CTL_UNNUMBERED define.

There are two remaining gotchas:
- The directories have impossible permissions (writeable).

- The ctl_name for the kernel directory is inconsistent with everything else. It should be CTL_KERN.

I think the patch below fixes that up but I haven't had a chance to test it yet.

I kind of feel bad about being so picky but the this code is the only place in the kernel where I have seen us violate either of those rules, and it is a lot easier to deal with things when they are consistent.

kernel/sched.c +5 -4
index b0afd8d..47afd80 100644
@@ -5223,15 +5223,16 @@ static void migrate_dead_tasks(unsigned int dead_cpu)
 static struct ctl_table sd_ctl_dir[] = {
 	{
 		.procname	= "sched_domain",
-		.mode		= 0755,
+		.mode		= 0555,
 	},
 	{0,},
 };
 
 static struct ctl_table sd_ctl_root[] = {
 	{
+		.ctl_name	= CTL_KERN,
 		.procname	= "kernel",
-		.mode		= 0755,
+		.mode		= 0555,
 		.child		= sd_ctl_dir,
 	},
 	{0,},
@@ -5307,7 +5308,7 @@ static ctl_table *sd_alloc_ctl_cpu_table(int cpu)
 	for_each_domain(cpu, sd) {
 		snprintf(buf, 32, "domain%d", i);
 		entry->procname = kstrdup(buf, GFP_KERNEL);
-		entry->mode = 0755;
+		entry->mode = 0555;
 		entry->child = sd_alloc_ctl_domain_table(sd);
 		entry++;
 		i++;
@@ -5327,7 +5328,7 @@ static void init_sched_domain_sysctl(void)
 	for (i = 0; i < cpu_num; i++, entry++) {
 		snprintf(buf, 32, "cpu%d", i);
 		entry->procname = kstrdup(buf, GFP_KERNEL);
-		entry->mode = 0755;
+		entry->mode = 0555;
 		entry->child = sd_alloc_ctl_cpu_table(i);
 	}
 	sd_sysctl_header = register_sysctl_table(sd_ctl_root);
#36 lore raw
Quoted 11 lines · Eric W. Biederman

Ok. I missed that. Duh. I just saw Andrews drop message.

This looks like Alexey respun my patch, or else we were thinking on parallel paths. Probably parallel given Alexey's dislike of using the CTL_UNNUMBERED define.

There are two remaining gotchas:
- The directories have impossible permissions (writeable).

- The ctl_name for the kernel directory is inconsistent with everything else. It should be CTL_KERN.

thx, i've applied your patch to my tree.

Quoted 4 lines

I kind of feel bad about being so picky but the this code is the only place in the kernel where I have seen us violate either of those rules, and it is a lot easier to deal with things when they are consistent.

sure enough, i'm not opposed at all to fixing these issues. We should move your debug-sysctl-bugs patch upstream ASAP.

Ingo

#37 lore raw

2.6.23-rc2-mm2: drivers/s390/char/keyboard.c compile error

In reply to Andrew Morton
Quoted 7 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...
+unicode-diacritics-support.patch
...
misc
...

The change to drivers/s390/char/keyboard.c doesn't compile:

<-- snip -->

...
LD .tmp_vmlinux1
drivers/s390/built-in.o: In function `kbd_ioctl':
(.text+0x2d666): undefined reference to conv_uni_to_8bit' drivers/s390/built-in.o: In function kbd_ioctl':
(.text+0x2d67c): undefined reference to conv_uni_to_8bit' drivers/s390/built-in.o: In function kbd_ioctl':
(.text+0x2d692): undefined reference to conv_uni_to_8bit' drivers/s390/built-in.o: In function kbd_ioctl':
(.text+0x2d906): undefined reference to conv_8bit_to_uni' drivers/s390/built-in.o: In function kbd_ioctl':
(.text+0x2d920): undefined reference to conv_8bit_to_uni' drivers/s390/built-in.o: In function kbd_ioctl':
(.text+0x2d93a): undefined reference to `conv_8bit_to_uni' make[1]: *** [.tmp_vmlinux1] Error 1
make: *** [_all] Error 2

<-- snip -->

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#38 lore raw

Re: 2.6.23-rc2-mm2: drivers/s390/char/keyboard.c compile error

Hi,

Quoted 5 lines · Adrian Bunk, le Fri 10 Aug 2007 17:56:56 +0200, a écrit :

On Thu, Aug 09, 2007 at 10:42:54PM -0700, Andrew Morton wrote:
The change to drivers/s390/char/keyboard.c doesn't compile:

(.text+0x2d666): undefined reference to conv_uni_to_8bit' (.text+0x2d906): undefined reference to conv_8bit_to_uni'

Ah, so s390 doesn't yet have the notion of consolemap and supposes latin1... Then fine, it's actually simpler, here is a patch.

Samuel

Turn the kernel accent_table into unicode, and extend ioctls KDGKBDIACR and KDSKBDIACR into their equivalents KDGKBDIACRUC and KDSKBDIACR.

New function int conv_uni_to_8bit(u32 uni) for converting unicode into 8bit _input_. No, we don't want to store the translation, as it is potentially sparse and large.

drivers/acorn/char/defkeymap-l7200.c +1 -1
index 9e18ce7..28a5fbc 100644
@@ -346,7 +346,7 @@ char *func_table[MAX_NR_FUNC] = {
 	0,
 };
 
-struct kbdiacr accent_table[MAX_DIACR] = {
+struct kbdiacruc accent_table[MAX_DIACR] = {
 	{'`', 'A', '\300'},	{'`', 'a', '\340'},
 	{'\'', 'A', '\301'},	{'\'', 'a', '\341'},
 	{'^', 'A', '\302'},	{'^', 'a', '\342'},
drivers/char/consolemap.c +16 -6
index 4b3916f..689d820 100644
@@ -670,19 +670,29 @@ void con_protect_unimap(struct vc_data *vc, int rdonly)
 		p->readonly = rdonly;
 }
 
+/*
+ * Always use USER_MAP. These functions are used by the keyboard,
+ * which shouldn't be affected by G0/G1 switching, etc.
+ * If the user map still contains default values, i.e. the
+ * direct-to-font mapping, then assume user is using Latin1.
+ */
 /* may be called during an interrupt */
 u32 conv_8bit_to_uni(unsigned char c)
 {
-	/*
-	 * Always use USER_MAP. This function is used by the keyboard,
-	 * which shouldn't be affected by G0/G1 switching, etc.
-	 * If the user map still contains default values, i.e. the
-	 * direct-to-font mapping, then assume user is using Latin1.
-	 */
 	unsigned short uni = translations[USER_MAP][c];
 	return uni == (0xf000 | c) ? c : uni;
 }
 
+int conv_uni_to_8bit(u32 uni)
+{
+	int c;
+	for (c = 0; c < 0x100; c++)
+		if (translations[USER_MAP][c] == uni ||
+		   (translations[USER_MAP][c] == (c | 0xf000) && uni == c))
+			return c;
+	return -1;
+}
+
 int
 conv_uni_to_pc(struct vc_data *conp, long ucs) 
 {
drivers/char/defkeymap.c_shipped +1 -1
index 453a2f1..0aa419a 100644
@@ -222,7 +222,7 @@ char *func_table[MAX_NR_FUNC] = {
 	NULL,
 };
 
-struct kbdiacr accent_table[MAX_DIACR] = {
+struct kbdiacruc accent_table[MAX_DIACR] = {
 	{'`', 'A', '\300'},	{'`', 'a', '\340'},
 	{'\'', 'A', '\301'},	{'\'', 'a', '\341'},
 	{'^', 'A', '\302'},	{'^', 'a', '\342'},
drivers/char/keyboard.c +25 -10
index 2ce0af1..3bec260 100644
@@ -41,6 +41,7 @@
 #include <linux/sysrq.h>
 #include <linux/input.h>
 #include <linux/reboot.h>
+#include <linux/consolemap.h>
 
 extern void ctrl_alt_del(void);
 
@@ -403,9 +404,12 @@ static unsigned int handle_diacr(struct vc_data *vc, unsigned int ch)
 		return d;
 
 	if (kbd->kbdmode == VC_UNICODE)
-		to_utf8(vc, conv_8bit_to_uni(d));
-	else if (d < 0x100)
-		put_queue(vc, d);
+		to_utf8(vc, d);
+	else {
+		int c = conv_uni_to_8bit(d);
+		if (c != -1)
+			put_queue(vc, c);
+	}
 
 	return ch;
 }
@@ -417,9 +421,12 @@ static void fn_enter(struct vc_data *vc)
 {
 	if (diacr) {
 		if (kbd->kbdmode == VC_UNICODE)
-			to_utf8(vc, conv_8bit_to_uni(diacr));
-		else if (diacr < 0x100)
-			put_queue(vc, diacr);
+			to_utf8(vc, diacr);
+		else {
+			int c = conv_uni_to_8bit(diacr);
+			if (c != -1)
+				put_queue(vc, c);
+		}
 		diacr = 0;
 	}
 	put_queue(vc, 13);
@@ -627,9 +634,12 @@ static void k_unicode(struct vc_data *vc, unsigned int value, char up_flag)
 		return;
 	}
 	if (kbd->kbdmode == VC_UNICODE)
-		to_utf8(vc, conv_8bit_to_uni(value));
-	else if (value < 0x100)
-		put_queue(vc, value);
+		to_utf8(vc, value);
+	else {
+		int c = conv_uni_to_8bit(value);
+		if (c != -1)
+			put_queue(vc, c);
+	}
 }
 
 /*
@@ -646,7 +656,12 @@ static void k_deadunicode(struct vc_data *vc, unsigned int value, char up_flag)
 
 static void k_self(struct vc_data *vc, unsigned char value, char up_flag)
 {
-	k_unicode(vc, value, up_flag);
+	unsigned int uni;
+	if (kbd->kbdmode == VC_UNICODE)
+		uni = value;
+	else
+		uni = conv_8bit_to_uni(value);
+	k_unicode(vc, uni, up_flag);
 }
 
 static void k_dead2(struct vc_data *vc, unsigned char value, char up_flag)
drivers/char/vt_ioctl.c +44 -2

73 lines not on this page · raw message

drivers/s390/char/defkeymap.c +1 -1
index 564baca..389346c 100644
@@ -150,7 +150,7 @@ char *func_table[MAX_NR_FUNC] = {
 	NULL,
 };
 
-struct kbdiacr accent_table[MAX_DIACR] = {
+struct kbdiacruc accent_table[MAX_DIACR] = {
 	{'^', 'c', '\003'},	{'^', 'd', '\004'},
 	{'^', 'z', '\032'},	{'^', '\012', '\000'},
 };
drivers/s390/char/keyboard.c +55 -11

114 lines not on this page · raw message

drivers/s390/char/keyboard.h +2 -2
index f7bf45c..5ccfe9c 100644
@@ -25,9 +25,9 @@ struct kbd_data {
 	unsigned short **key_maps;
 	char **func_table;
 	fn_handler_fn **fn_handler;
-	struct kbdiacr *accent_table;
+	struct kbdiacruc *accent_table;
 	unsigned int accent_table_size;
-	unsigned char diacr;
+	unsigned int diacr;
 	unsigned short sysrq;
 };
 
drivers/tc/lk201-map.c_shipped +1 -1
index a9df8f5..4d2aba5 100644
@@ -225,7 +225,7 @@ char *func_table[MAX_NR_FUNC] = {
 	0,
 };
 
-struct kbdiacr accent_table[MAX_DIACR] = {
+struct kbdiacruc accent_table[MAX_DIACR] = {
 	{'`', 'A', 'À'},	{'`', 'a', 'à'},
 	{'\'', 'A', 'Á'},	{'\'', 'a', 'á'},
 	{'^', 'A', 'Â'},	{'^', 'a', 'â'},
include/linux/consolemap.h +1 -0
index 06b2768..e2bf7e5 100644
@@ -16,4 +16,5 @@ extern u16 inverse_translate(struct vc_data *conp, int glyph, int use_unicode);
 extern unsigned short *set_translate(int m, struct vc_data *vc);
 extern int conv_uni_to_pc(struct vc_data *conp, long ucs);
 extern u32 conv_8bit_to_uni(unsigned char c);
+extern int conv_uni_to_8bit(u32 uni);
 void console_map_init(void);
include/linux/kbd_diacr.h +1 -1
index 1c1a3ff..7274ec6 100644
@@ -2,7 +2,7 @@
 #define _DIACR_H
 #include <linux/kd.h>
 
-extern struct kbdiacr accent_table[];
+extern struct kbdiacruc accent_table[];
 extern unsigned int accent_table_size;
 
 #endif /* _DIACR_H */
include/linux/kd.h +10 -0
index 28be4fb..c91fc0c 100644
@@ -125,6 +125,16 @@ struct kbdiacrs {
 #define KDGKBDIACR      0x4B4A  /* read kernel accent table */
 #define KDSKBDIACR      0x4B4B  /* write kernel accent table */
 
+struct kbdiacruc {
+        __u32 diacr, base, result;
+};
+struct kbdiacrsuc {
+        unsigned int kb_cnt;    /* number of entries in following array */
+	struct kbdiacruc kbdiacruc[256];    /* MAX_DIACR from keyboard.h */
+};
+#define KDGKBDIACRUC    0x4BFA  /* read kernel accent table - UCS */
+#define KDSKBDIACRUC    0x4BFB  /* write kernel accent table - UCS */
+
 struct kbkeycode {
 	unsigned int scancode, keycode;
 };
#39 lore raw
In reply to Andrew Morton

Andrew Morton pisze:

Quoted 2 lines

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Yet another sysctl table check failed

[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   89.491892] sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17

Regards,
Michal

Signature · 2 lines
LOG
http://www.stardust.webpages.pl/log/
#40 lore raw
Quoted 6 lines · Michal Piotrowski

Andrew Morton pisze:

Quoted 2 lines

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Yet another sysctl table check failed

Quoted 8 lines
[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   89.491892] sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17

And maybe this ?

http://lkml.org/lkml/2007/8/10/112

Quoted 3 lines

Regards,
Michal

Gabriel

#41 lore raw
Quoted 11 lines · Gabriel C
Quoted 2 lines · Michal Piotrowski

Andrew Morton pisze:

Quoted 1 line

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Quoted 7 lines
Quoted 1 line

Yet another sysctl table check failed

[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 89.491892] sysctl table check failed:
Quoted 8 lines

/net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy

Quoted 5 lines
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17

And maybe this ?

Could be.

sysctl table check failure looks legitimate.
At a quick skim I can't tell for certain if failure to register the sysctl table will keep the module from loading but it might.

It looks like another canidate on the pile of kill the broken binary sysctl.

Eric

author maintainer
#42 lore raw
Quoted 22 lines · On Fri, 10 Aug 2007 11:33:41 -0600 [email protected] (Eric W. Biederman)…
Quoted 11 lines · Gabriel C
Quoted 2 lines · Michal Piotrowski

Andrew Morton pisze:

Quoted 1 line

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Quoted 7 lines
Quoted 1 line

Yet another sysctl table check failed

[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 89.491892] sysctl table check failed:
Quoted 8 lines

/net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy

Quoted 5 lines
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17

And maybe this ?

Quoted 9 lines

Could be.

sysctl table check failure looks legitimate.
At a quick skim I can't tell for certain if failure to register the sysctl table will keep the module from loading but it might.

It looks like another canidate on the pile of kill the broken binary sysctl.

There seems to be rather a lot of damage here.

I assume that the sysctl changes are what caused the netfilter oopses.

- nf_conntrack_init() calls nf_conntrack_expect_init() which fails due to sysctl problems.

- nf_conntrack_init() bales out without calling nf_conntrack_helper_init()

So nf_ct_helper_hsize never gets initialised.

- Later, netfilter client code calls helper_hash(), which gets a divide-by-zero due to nf_ct_helper_hsize==0.

yeah, that's a netfilter bug, but we're trying to get kernels tested here. If I'm feeling energetic I'll drop the sysctl changes and do rc2-mm3. Probably I won't feel energetic, but we'll need a lot of fixes here before I can release the sysctl changes in another -mm, please.

#43 lore raw
Quoted 47 lines · Andrew Morton
Quoted 6 lines · On Fri, 10 Aug 2007 11:33:41 -0600 [email protected] (Eric W. Biederman)…
Quoted 4 lines · Gabriel C
Quoted 2 lines · Michal Piotrowski

Andrew Morton pisze:

Quoted 1 line

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Quoted 16 lines
Quoted 7 lines
Quoted 7 lines
Quoted 1 line

Yet another sysctl table check failed

[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 89.491892] sysctl table check failed:
Quoted 8 lines

/net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy

Quoted 5 lines
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17

And maybe this ?

Quoted 9 lines

Could be.

sysctl table check failure looks legitimate.
At a quick skim I can't tell for certain if failure to register the sysctl table will keep the module from loading but it might.

It looks like another canidate on the pile of kill the broken binary sysctl.

There seems to be rather a lot of damage here.

I assume that the sysctl changes are what caused the netfilter oopses.

- nf_conntrack_init() calls nf_conntrack_expect_init() which fails due to sysctl problems.

- nf_conntrack_init() bales out without calling nf_conntrack_helper_init()

So nf_ct_helper_hsize never gets initialised.

Quoted 8 lines

- Later, netfilter client code calls helper_hash(), which gets a divide-by-zero due to nf_ct_helper_hsize==0.

yeah, that's a netfilter bug, but we're trying to get kernels tested here. If I'm feeling energetic I'll drop the sysctl changes and do rc2-mm3. Probably I won't feel energetic, but we'll need a lot of fixes here before I can release the sysctl changes in another -mm, please.

Under construction.

Eric

#44 lore raw

PATCH 1/7 sysctl: Remove broken cdrom binary sysctls

In reply to Andrew Morton

The binary interface for the cdrom sysctls can't possilby work. So remove the binary sysctls and reduce cdrom_sysctl_handler to it's essentials (to kill the uses of ctl_name).

Since the last time this patch was posted I radically simplified cdrom_sysctl_helper to meet address Alan's objections.

---

 drivers/cdrom/cdrom.c |   46 ++++++----------------------------------------
 1 files changed, 6 insertions(+), 40 deletions(-)
drivers/cdrom/cdrom.c +6 -40
index 67ee3d4..679c7c0 100644
@@ -3454,47 +3454,19 @@ static void cdrom_update_settings(void)
 static int cdrom_sysctl_handler(ctl_table *ctl, int write, struct file * filp,
 				void __user *buffer, size_t *lenp, loff_t *ppos)
 {
-	int *valp = ctl->data;
-	int val = *valp;
 	int ret;
 	
 	ret = proc_dointvec(ctl, write, filp, buffer, lenp, ppos);
 
-	if (write && *valp != val) {
+	if (write) {
 	
 		/* we only care for 1 or 0. */
-		if (*valp)
-			*valp = 1;
-		else
-			*valp = 0;
+		autoclose        = !!cdrom_sysctl_settings.autoclose;
+		autoeject        = !!cdrom_sysctl_settings.autoeject;
+		debug	         = !!cdrom_sysctl_settings.debug;
+		lockdoor         = !!cdrom_sysctl_settings.lock;
+		check_media_type = !!cdrom_sysctl_settings.check;
 
-		switch (ctl->ctl_name) {
-		case DEV_CDROM_AUTOCLOSE: {
-			if (valp == &cdrom_sysctl_settings.autoclose)
-				autoclose = cdrom_sysctl_settings.autoclose;
-			break;
-			}
-		case DEV_CDROM_AUTOEJECT: {
-			if (valp == &cdrom_sysctl_settings.autoeject)
-				autoeject = cdrom_sysctl_settings.autoeject;
-			break;
-			}
-		case DEV_CDROM_DEBUG: {
-			if (valp == &cdrom_sysctl_settings.debug)
-				debug = cdrom_sysctl_settings.debug;
-			break;
-			}
-		case DEV_CDROM_LOCK: {
-			if (valp == &cdrom_sysctl_settings.lock)
-				lockdoor = cdrom_sysctl_settings.lock;
-			break;
-			}
-		case DEV_CDROM_CHECK_MEDIA: {
-			if (valp == &cdrom_sysctl_settings.check)
-				check_media_type = cdrom_sysctl_settings.check;
-			break;
-			}
-		}
 		/* update the option flags according to the changes. we
 		   don't have per device options through sysctl yet,
 		   but we will have and then this will disappear. */
@@ -3507,7 +3479,6 @@ static int cdrom_sysctl_handler(ctl_table *ctl, int write, struct file * filp,
 /* Place files in /proc/sys/dev/cdrom */
 static ctl_table cdrom_table[] = {
 	{
-		.ctl_name	= DEV_CDROM_INFO,
 		.procname	= "info",
 		.data		= &cdrom_sysctl_settings.info, 
 		.maxlen		= CDROM_STR_SIZE,
@@ -3515,7 +3486,6 @@ static ctl_table cdrom_table[] = {
 		.proc_handler	= &cdrom_sysctl_info,
 	},
 	{
-		.ctl_name	= DEV_CDROM_AUTOCLOSE,
 		.procname	= "autoclose",
 		.data		= &cdrom_sysctl_settings.autoclose,
 		.maxlen		= sizeof(int),
@@ -3523,7 +3493,6 @@ static ctl_table cdrom_table[] = {
 		.proc_handler	= &cdrom_sysctl_handler,
 	},
 	{
-		.ctl_name	= DEV_CDROM_AUTOEJECT,
 		.procname	= "autoeject",
 		.data		= &cdrom_sysctl_settings.autoeject,
 		.maxlen		= sizeof(int),
@@ -3531,7 +3500,6 @@ static ctl_table cdrom_table[] = {
 		.proc_handler	= &cdrom_sysctl_handler,
 	},
 	{
-		.ctl_name	= DEV_CDROM_DEBUG,
 		.procname	= "debug",
 		.data		= &cdrom_sysctl_settings.debug,
 		.maxlen		= sizeof(int),
@@ -3539,7 +3507,6 @@ static ctl_table cdrom_table[] = {
 		.proc_handler	= &cdrom_sysctl_handler,
 	},
 	{
-		.ctl_name	= DEV_CDROM_LOCK,
 		.procname	= "lock",
 		.data		= &cdrom_sysctl_settings.lock,
 		.maxlen		= sizeof(int),
@@ -3547,7 +3514,6 @@ static ctl_table cdrom_table[] = {
 		.proc_handler	= &cdrom_sysctl_handler,
 	},
 	{
-		.ctl_name	= DEV_CDROM_CHECK_MEDIA,
 		.procname	= "check_media",
 		.data		= &cdrom_sysctl_settings.check,
 		.maxlen		= sizeof(int),
Signature · 1 line
1.5.1.1.181.g2de0
#45 lore raw

PATCH 2/7 sysctl: parport remove binary paths.

The sysctl binary paths don't look as if they even code work, .data is not filled in, and all of the proc_handlers look at extra1 and there is not strategy routine.

So just kill the binary paths.

In addition this patch removes the setting of extra1 on directories. It doesn't look like the parport code ever examines it, and it's bad sysctl form.

---
 drivers/parport/procfs.c |   38 +++++---------------------------------
 1 files changed, 5 insertions(+), 33 deletions(-)
drivers/parport/procfs.c +5 -33
index bdbdab9..ed82e41 100644
@@ -237,7 +237,7 @@ static int do_hardware_modes (ctl_table *table, int write,
 #define PARPORT_PARPORT_DIR(CHILD) { .ctl_name = DEV_PARPORT, .procname = "parport", \
                                      .mode = 0555, .child = CHILD }
 #define PARPORT_DEV_DIR(CHILD) { .ctl_name = CTL_DEV, .procname = "dev", .mode = 0555, .child = CHILD }
-#define PARPORT_DEVICES_ROOT_DIR  { .ctl_name = DEV_PARPORT_DEVICES, .procname = "devices", \
+#define PARPORT_DEVICES_ROOT_DIR  {  .procname = "devices", \
                                     .mode = 0555, .child = NULL }
 
 static const unsigned long parport_min_timeslice_value =
@@ -266,7 +266,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 	.sysctl_header = NULL,
         {
 		{
-			.ctl_name	= DEV_PARPORT_SPINTIME,
 			.procname	= "spintime",
 			.data		= NULL,
 			.maxlen		= sizeof(int),
@@ -276,7 +275,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.extra2		= (void*) &parport_max_spintime_value
 		},
 		{
-			.ctl_name	= DEV_PARPORT_BASE_ADDR,
 			.procname	= "base-addr",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -284,7 +282,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_hardware_base_addr
 		},
 		{
-			.ctl_name	= DEV_PARPORT_IRQ,
 			.procname	= "irq",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -292,7 +289,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_hardware_irq
 		},
 		{
-			.ctl_name	= DEV_PARPORT_DMA,
 			.procname	= "dma",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -300,7 +296,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_hardware_dma
 		},
 		{
-			.ctl_name	= DEV_PARPORT_MODES,
 			.procname	= "modes",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -310,7 +305,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 		PARPORT_DEVICES_ROOT_DIR,
 #ifdef CONFIG_PARPORT_1284
 		{
-			.ctl_name	= DEV_PARPORT_AUTOPROBE,
 			.procname	= "autoprobe",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -318,7 +312,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_autoprobe
 		},
 		{
-			.ctl_name	= DEV_PARPORT_AUTOPROBE + 1,
 			.procname	= "autoprobe0",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -326,7 +319,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	=  &do_autoprobe
 		},
 		{
-			.ctl_name	= DEV_PARPORT_AUTOPROBE + 2,
 			.procname	= "autoprobe1",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -334,7 +326,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_autoprobe
 		},
 		{
-			.ctl_name	= DEV_PARPORT_AUTOPROBE + 3,
 			.procname	= "autoprobe2",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -342,7 +333,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= &do_autoprobe
 		},
 		{
-			.ctl_name	= DEV_PARPORT_AUTOPROBE + 4,
 			.procname	= "autoprobe3",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -354,7 +344,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 	},
 	{
 		{
-			.ctl_name	= DEV_PARPORT_DEVICES_ACTIVE,
 			.procname	= "active",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -393,7 +382,6 @@ parport_device_sysctl_template = {
 	.sysctl_header = NULL,
 	{
 		{
-			.ctl_name 	= DEV_PARPORT_DEVICE_TIMESLICE,
 			.procname 	= "timeslice",
 			.data		= NULL,
 			.maxlen		= sizeof(int),
@@ -449,7 +437,6 @@ parport_default_sysctl_table = {
 	.sysctl_header	= NULL,
 	{
 		{
-			.ctl_name	= DEV_PARPORT_DEFAULT_TIMESLICE,
 			.procname	= "timeslice",
 			.data		= &parport_default_timeslice,
 			.maxlen		= sizeof(parport_default_timeslice),
@@ -459,7 +446,6 @@ parport_default_sysctl_table = {
 			.extra2		= (void*) &parport_max_timeslice_value
 		},
 		{
-			.ctl_name	= DEV_PARPORT_DEFAULT_SPINTIME,
 			.procname	= "spintime",
 			.data		= &parport_default_spintime,
 			.maxlen		= sizeof(parport_default_spintime),
@@ -502,7 +488,7 @@ int parport_proc_register(struct parport *port)
 
 	t->device_dir[0].extra1 = port;
 
-	for (i = 0; i < 8; i++)
+	for (i = 0; i < 5; i++)
 		t->vars[i].extra1 = port;
 
 	t->vars[0].data = &port->spintime;
@@ -512,7 +498,7 @@ int parport_proc_register(struct parport *port)
 		t->vars[6 + i].extra2 = &port->probe_info[i];
 
 	t->port_dir[0].procname = port->name;
-	t->port_dir[0].ctl_name = port->number + 1; /* nb 0 isn't legal here */
+	t->port_dir[0].ctl_name = 0;
 
 	t->port_dir[0].child = t->vars;
 	t->parport_dir[0].child = t->port_dir;
@@ -551,26 +537,12 @@ int parport_device_proc_register(struct pardevice *device)
 	t->dev_dir[0].child = t->parport_dir;
 	t->parport_dir[0].child = t->port_dir;
 	t->port_dir[0].procname = port->name;
-	t->port_dir[0].ctl_name = port->number + 1; /* nb 0 isn't legal here */
+	t->port_dir[0].ctl_name = 0;
 	t->port_dir[0].child = t->devices_root_dir;
 	t->devices_root_dir[0].child = t->device_dir;
 
-#ifdef CONFIG_PARPORT_1284
-
-	t->device_dir[0].ctl_name =
-		parport_device_num(port->number, port->muxport,
-				   device->daisy)
-		+ 1;  /* nb 0 isn't legal here */ 
-
-#else /* No IEEE 1284 support */
-
-	/* parport_device_num isn't available. */
-	t->device_dir[0].ctl_name = 1;
-	
-#endif /* IEEE 1284 support or not */
-
+	t->device_dir[0].ctl_name = 0;
 	t->device_dir[0].procname = device->name;
-	t->device_dir[0].extra1 = device;
 	t->device_dir[0].child = t->vars;
 	t->vars[0].data = &device->timeslice;
 
Signature · 1 line
1.5.1.1.181.g2de0
#46 lore raw

PATCH 3/7 sysctl: Simplify the pty sysctl logic.

Instead of having a bunch of ifdefs in sysctl.c move all of the pty sysctl logic into drivers/char/pty.c

As well as cleaning up the logic this prevents sysctl_check_table from complaining that the root table has a NULL data pointer on something with generic methods.

---
 drivers/char/pty.c |   24 +++++++++++++++++++++++-
 kernel/sysctl.c    |   11 -----------
 2 files changed, 23 insertions(+), 12 deletions(-)
drivers/char/pty.c +23 -1
index de14aea..1d68b32 100644
@@ -313,7 +313,7 @@ int pty_limit = NR_UNIX98_PTY_DEFAULT;
 static int pty_limit_min = 0;
 static int pty_limit_max = NR_UNIX98_PTY_MAX;
 
-ctl_table pty_table[] = {
+static struct ctl_table pty_table[] = {
 	{
 		.ctl_name	= PTY_MAX,
 		.procname	= "max",
@@ -335,6 +335,27 @@ ctl_table pty_table[] = {
 	}
 };
 
+static struct ctl_table pty_kern_table[] = {
+	{
+		.ctl_name	= KERN_PTY,
+		.procname	= "pty",
+		.mode		= 0555,
+		.child		= pty_table,
+	},
+	{}
+};
+
+static struct ctl_table pty_root_table[] = {
+	{
+		.ctl_name	= CTL_KERN,
+		.procname	= "kernel",
+		.mode		= 0555,
+		.child		= pty_kern_table,
+	},
+	{}
+};
+
+
 static int pty_unix98_ioctl(struct tty_struct *tty, struct file *file,
 			    unsigned int cmd, unsigned long arg)
 {
@@ -399,6 +420,7 @@ static void __init unix98_pty_init(void)
 		panic("Couldn't register Unix98 pts driver");
 
 	pty_table[1].data = &ptm_driver->refcount;
+	register_sysctl_table(pty_root_table);
 }
 #else
 static inline void unix98_pty_init(void) { }
kernel/sysctl.c +0 -11
index 03759ab..f18e7ec 100644
@@ -150,9 +150,6 @@ static struct ctl_table fs_table[];
 static struct ctl_table debug_table[];
 static struct ctl_table dev_table[];
 extern struct ctl_table random_table[];
-#ifdef CONFIG_UNIX98_PTYS
-extern struct ctl_table pty_table[];
-#endif
 #ifdef CONFIG_INOTIFY_USER
 extern struct ctl_table inotify_table[];
 #endif
@@ -519,14 +516,6 @@ static struct ctl_table kern_table[] = {
 		.mode		= 0555,
 		.child		= random_table,
 	},
-#ifdef CONFIG_UNIX98_PTYS
-	{
-		.ctl_name	= KERN_PTY,
-		.procname	= "pty",
-		.mode		= 0555,
-		.child		= pty_table,
-	},
-#endif
 	{
 		.ctl_name	= KERN_OVERFLOWUID,
 		.procname	= "overflowuid",
Signature · 1 line
1.5.1.1.181.g2de0
#47 lore raw

PATCH 4/7 sysctl: remove broken netfilter binary sysctls

No one has bothered to set strategy routine for the the netfilter sysctls that return jiffies to be sysctl_jiffies.

So it appears the sys_sysctl path is unused and untested, so this patch removes the binary sysctl numbers.

Which fixes the netfilter oops in 2.6.23-rc2-mm2 for me.

---
 net/ipv4/netfilter/nf_conntrack_proto_icmp.c   |    2 --
 net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c |    1 -
 net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c |    1 -
 net/netfilter/nf_conntrack_proto_generic.c     |    2 --
 net/netfilter/nf_conntrack_proto_sctp.c        |   14 --------------
 net/netfilter/nf_conntrack_proto_tcp.c         |   18 ------------------
 net/netfilter/nf_conntrack_proto_udp.c         |    4 ----
 7 files changed, 0 insertions(+), 42 deletions(-)
net/ipv4/netfilter/nf_conntrack_proto_icmp.c +0 -2
index 6593fd2..abdf9d4 100644
@@ -284,7 +284,6 @@ static int icmp_nfattr_to_tuple(struct nfattr *tb[],
 static struct ctl_table_header *icmp_sysctl_header;
 static struct ctl_table icmp_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_ICMP_TIMEOUT,
 		.procname	= "nf_conntrack_icmp_timeout",
 		.data		= &nf_ct_icmp_timeout,
 		.maxlen		= sizeof(unsigned int),
@@ -298,7 +297,6 @@ static struct ctl_table icmp_sysctl_table[] = {
 #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
 static struct ctl_table icmp_compat_sysctl_table[] = {
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_ICMP_TIMEOUT,
 		.procname	= "ip_conntrack_icmp_timeout",
 		.data		= &nf_ct_icmp_timeout,
 		.maxlen		= sizeof(unsigned int),
net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c +0 -1
index 3153e15..da4724f 100644
@@ -305,7 +305,6 @@ static struct nf_hook_ops ipv6_conntrack_ops[] = {
 #ifdef CONFIG_SYSCTL
 static ctl_table nf_ct_ipv6_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_FRAG6_TIMEOUT,
 		.procname	= "nf_conntrack_frag6_timeout",
 		.data		= &nf_ct_frag6_timeout,
 		.maxlen		= sizeof(unsigned int),
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c +0 -1
index ab154fb..85f6ff5 100644
@@ -263,7 +263,6 @@ static int icmpv6_nfattr_to_tuple(struct nfattr *tb[],
 static struct ctl_table_header *icmpv6_sysctl_header;
 static struct ctl_table icmpv6_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_ICMPV6_TIMEOUT,
 		.procname	= "nf_conntrack_icmpv6_timeout",
 		.data		= &nf_ct_icmpv6_timeout,
 		.maxlen		= sizeof(unsigned int),
net/netfilter/nf_conntrack_proto_generic.c +0 -2
index d8b5018..13f8191 100644
@@ -70,7 +70,6 @@ static int new(struct nf_conn *conntrack, const struct sk_buff *skb,
 static struct ctl_table_header *generic_sysctl_header;
 static struct ctl_table generic_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_GENERIC_TIMEOUT,
 		.procname	= "nf_conntrack_generic_timeout",
 		.data		= &nf_ct_generic_timeout,
 		.maxlen		= sizeof(unsigned int),
@@ -84,7 +83,6 @@ static struct ctl_table generic_sysctl_table[] = {
 #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
 static struct ctl_table generic_compat_sysctl_table[] = {
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_GENERIC_TIMEOUT,
 		.procname	= "ip_conntrack_generic_timeout",
 		.data		= &nf_ct_generic_timeout,
 		.maxlen		= sizeof(unsigned int),
net/netfilter/nf_conntrack_proto_sctp.c +0 -14
index 04192ac..cb04675 100644
@@ -476,7 +476,6 @@ static unsigned int sctp_sysctl_table_users;
 static struct ctl_table_header *sctp_sysctl_header;
 static struct ctl_table sctp_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED,
 		.procname	= "nf_conntrack_sctp_timeout_closed",
 		.data		= &nf_ct_sctp_timeout_closed,
 		.maxlen		= sizeof(unsigned int),
@@ -484,7 +483,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT,
 		.procname	= "nf_conntrack_sctp_timeout_cookie_wait",
 		.data		= &nf_ct_sctp_timeout_cookie_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -492,7 +490,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED,
 		.procname	= "nf_conntrack_sctp_timeout_cookie_echoed",
 		.data		= &nf_ct_sctp_timeout_cookie_echoed,
 		.maxlen		= sizeof(unsigned int),
@@ -500,7 +497,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED,
 		.procname	= "nf_conntrack_sctp_timeout_established",
 		.data		= &nf_ct_sctp_timeout_established,
 		.maxlen		= sizeof(unsigned int),
@@ -508,7 +504,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT,
 		.procname	= "nf_conntrack_sctp_timeout_shutdown_sent",
 		.data		= &nf_ct_sctp_timeout_shutdown_sent,
 		.maxlen		= sizeof(unsigned int),
@@ -516,7 +511,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD,
 		.procname	= "nf_conntrack_sctp_timeout_shutdown_recd",
 		.data		= &nf_ct_sctp_timeout_shutdown_recd,
 		.maxlen		= sizeof(unsigned int),
@@ -524,7 +518,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT,
 		.procname	= "nf_conntrack_sctp_timeout_shutdown_ack_sent",
 		.data		= &nf_ct_sctp_timeout_shutdown_ack_sent,
 		.maxlen		= sizeof(unsigned int),
@@ -539,7 +532,6 @@ static struct ctl_table sctp_sysctl_table[] = {
 #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
 static struct ctl_table sctp_compat_sysctl_table[] = {
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED,
 		.procname	= "ip_conntrack_sctp_timeout_closed",
 		.data		= &nf_ct_sctp_timeout_closed,
 		.maxlen		= sizeof(unsigned int),
@@ -547,7 +539,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT,
 		.procname	= "ip_conntrack_sctp_timeout_cookie_wait",
 		.data		= &nf_ct_sctp_timeout_cookie_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -555,7 +546,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED,
 		.procname	= "ip_conntrack_sctp_timeout_cookie_echoed",
 		.data		= &nf_ct_sctp_timeout_cookie_echoed,
 		.maxlen		= sizeof(unsigned int),
@@ -563,7 +553,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED,
 		.procname	= "ip_conntrack_sctp_timeout_established",
 		.data		= &nf_ct_sctp_timeout_established,
 		.maxlen		= sizeof(unsigned int),
@@ -571,7 +560,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT,
 		.procname	= "ip_conntrack_sctp_timeout_shutdown_sent",
 		.data		= &nf_ct_sctp_timeout_shutdown_sent,
 		.maxlen		= sizeof(unsigned int),
@@ -579,7 +567,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD,
 		.procname	= "ip_conntrack_sctp_timeout_shutdown_recd",
 		.data		= &nf_ct_sctp_timeout_shutdown_recd,
 		.maxlen		= sizeof(unsigned int),
@@ -587,7 +574,6 @@ static struct ctl_table sctp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT,
 		.procname	= "ip_conntrack_sctp_timeout_shutdown_ack_sent",
 		.data		= &nf_ct_sctp_timeout_shutdown_ack_sent,
 		.maxlen		= sizeof(unsigned int),
net/netfilter/nf_conntrack_proto_tcp.c +0 -18
index eb3fe74..c9d74a2 100644
@@ -1166,7 +1166,6 @@ static unsigned int tcp_sysctl_table_users;
 static struct ctl_table_header *tcp_sysctl_header;
 static struct ctl_table tcp_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT,
 		.procname	= "nf_conntrack_tcp_timeout_syn_sent",
 		.data		= &nf_ct_tcp_timeout_syn_sent,
 		.maxlen		= sizeof(unsigned int),
@@ -1174,7 +1173,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV,
 		.procname	= "nf_conntrack_tcp_timeout_syn_recv",
 		.data		= &nf_ct_tcp_timeout_syn_recv,
 		.maxlen		= sizeof(unsigned int),
@@ -1182,7 +1180,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED,
 		.procname	= "nf_conntrack_tcp_timeout_established",
 		.data		= &nf_ct_tcp_timeout_established,
 		.maxlen		= sizeof(unsigned int),
@@ -1190,7 +1187,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT,
 		.procname	= "nf_conntrack_tcp_timeout_fin_wait",
 		.data		= &nf_ct_tcp_timeout_fin_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1198,7 +1194,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT,
 		.procname	= "nf_conntrack_tcp_timeout_close_wait",
 		.data		= &nf_ct_tcp_timeout_close_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1206,7 +1201,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK,
 		.procname	= "nf_conntrack_tcp_timeout_last_ack",
 		.data		= &nf_ct_tcp_timeout_last_ack,
 		.maxlen		= sizeof(unsigned int),
@@ -1214,7 +1208,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT,
 		.procname	= "nf_conntrack_tcp_timeout_time_wait",
 		.data		= &nf_ct_tcp_timeout_time_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1222,7 +1215,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE,
 		.procname	= "nf_conntrack_tcp_timeout_close",
 		.data		= &nf_ct_tcp_timeout_close,
 		.maxlen		= sizeof(unsigned int),
@@ -1230,7 +1222,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS,
 		.procname	= "nf_conntrack_tcp_timeout_max_retrans",
 		.data		= &nf_ct_tcp_timeout_max_retrans,
 		.maxlen		= sizeof(unsigned int),
@@ -1269,7 +1260,6 @@ static struct ctl_table tcp_sysctl_table[] = {
 #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
 static struct ctl_table tcp_compat_sysctl_table[] = {
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT,
 		.procname	= "ip_conntrack_tcp_timeout_syn_sent",
 		.data		= &nf_ct_tcp_timeout_syn_sent,
 		.maxlen		= sizeof(unsigned int),
@@ -1277,7 +1267,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV,
 		.procname	= "ip_conntrack_tcp_timeout_syn_recv",
 		.data		= &nf_ct_tcp_timeout_syn_recv,
 		.maxlen		= sizeof(unsigned int),
@@ -1285,7 +1274,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED,
 		.procname	= "ip_conntrack_tcp_timeout_established",
 		.data		= &nf_ct_tcp_timeout_established,
 		.maxlen		= sizeof(unsigned int),
@@ -1293,7 +1281,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT,
 		.procname	= "ip_conntrack_tcp_timeout_fin_wait",
 		.data		= &nf_ct_tcp_timeout_fin_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1301,7 +1288,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT,
 		.procname	= "ip_conntrack_tcp_timeout_close_wait",
 		.data		= &nf_ct_tcp_timeout_close_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1309,7 +1295,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK,
 		.procname	= "ip_conntrack_tcp_timeout_last_ack",
 		.data		= &nf_ct_tcp_timeout_last_ack,
 		.maxlen		= sizeof(unsigned int),
@@ -1317,7 +1302,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT,
 		.procname	= "ip_conntrack_tcp_timeout_time_wait",
 		.data		= &nf_ct_tcp_timeout_time_wait,
 		.maxlen		= sizeof(unsigned int),
@@ -1325,7 +1309,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE,
 		.procname	= "ip_conntrack_tcp_timeout_close",
 		.data		= &nf_ct_tcp_timeout_close,
 		.maxlen		= sizeof(unsigned int),
@@ -1333,7 +1316,6 @@ static struct ctl_table tcp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS,
 		.procname	= "ip_conntrack_tcp_timeout_max_retrans",
 		.data		= &nf_ct_tcp_timeout_max_retrans,
 		.maxlen		= sizeof(unsigned int),
net/netfilter/nf_conntrack_proto_udp.c +0 -4
index 2a2fd1a..1e38c90 100644
@@ -146,7 +146,6 @@ static unsigned int udp_sysctl_table_users;
 static struct ctl_table_header *udp_sysctl_header;
 static struct ctl_table udp_sysctl_table[] = {
 	{
-		.ctl_name	= NET_NF_CONNTRACK_UDP_TIMEOUT,
 		.procname	= "nf_conntrack_udp_timeout",
 		.data		= &nf_ct_udp_timeout,
 		.maxlen		= sizeof(unsigned int),
@@ -154,7 +153,6 @@ static struct ctl_table udp_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_NF_CONNTRACK_UDP_TIMEOUT_STREAM,
 		.procname	= "nf_conntrack_udp_timeout_stream",
 		.data		= &nf_ct_udp_timeout_stream,
 		.maxlen		= sizeof(unsigned int),
@@ -168,7 +166,6 @@ static struct ctl_table udp_sysctl_table[] = {
 #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
 static struct ctl_table udp_compat_sysctl_table[] = {
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT,
 		.procname	= "ip_conntrack_udp_timeout",
 		.data		= &nf_ct_udp_timeout,
 		.maxlen		= sizeof(unsigned int),
@@ -176,7 +173,6 @@ static struct ctl_table udp_compat_sysctl_table[] = {
 		.proc_handler	= &proc_dointvec_jiffies,
 	},
 	{
-		.ctl_name	= NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT_STREAM,
 		.procname	= "ip_conntrack_udp_timeout_stream",
 		.data		= &nf_ct_udp_timeout_stream,
 		.maxlen		= sizeof(unsigned int),
Signature · 1 line
1.5.1.1.181.g2de0
#48 lore raw

PATCH 5/7 sysctl: Cleanup the sched debug sysctl usage.

- The ctl_name for the kernel directory is CTL_KERN
- It is impoosible to write to sysctl directories so do not give users write permissions.

This is enough to stop sysctl_check_table from complaining about the sched debug sysctls.

My apologies for not sending this earlier I had the impression Ingo's tree had diverged significantly from what was in the stable tree.

---
 kernel/sched.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)
kernel/sched.c +5 -4
index b0afd8d..47afd80 100644
@@ -5223,15 +5223,16 @@ static void migrate_dead_tasks(unsigned int dead_cpu)
 static struct ctl_table sd_ctl_dir[] = {
 	{
 		.procname	= "sched_domain",
-		.mode		= 0755,
+		.mode		= 0555,
 	},
 	{0,},
 };
 
 static struct ctl_table sd_ctl_root[] = {
 	{
+		.ctl_name	= CTL_KERN,
 		.procname	= "kernel",
-		.mode		= 0755,
+		.mode		= 0555,
 		.child		= sd_ctl_dir,
 	},
 	{0,},
@@ -5307,7 +5308,7 @@ static ctl_table *sd_alloc_ctl_cpu_table(int cpu)
 	for_each_domain(cpu, sd) {
 		snprintf(buf, 32, "domain%d", i);
 		entry->procname = kstrdup(buf, GFP_KERNEL);
-		entry->mode = 0755;
+		entry->mode = 0555;
 		entry->child = sd_alloc_ctl_domain_table(sd);
 		entry++;
 		i++;
@@ -5327,7 +5328,7 @@ static void init_sched_domain_sysctl(void)
 	for (i = 0; i < cpu_num; i++, entry++) {
 		snprintf(buf, 32, "cpu%d", i);
 		entry->procname = kstrdup(buf, GFP_KERNEL);
-		entry->mode = 0755;
+		entry->mode = 0555;
 		entry->child = sd_alloc_ctl_cpu_table(i);
 	}
 	sd_sysctl_header = register_sysctl_table(sd_ctl_root);
Signature · 1 line
1.5.1.1.181.g2de0
#49 lore raw

PATCH 6/7 sysctl: Update sysctl_checks list of binary paths.

In the netfilter code and the ipv6 ipqueue code I have found two more binary paths that don't conflict with anything. So this patch adds them to the list of valid sysctl binary paths.

---
 kernel/sysctl_check.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
kernel/sysctl_check.c +2 -0
index 930a514..d5e0337 100644
@@ -564,6 +564,7 @@ static struct trans_ctl_table trans_net_ipv6_table[] = {
 	{ NET_IPV6_IP6FRAG_TIME,	"ip6frag_time" },
 	{ NET_IPV6_IP6FRAG_SECRET_INTERVAL,	"ip6frag_secret_interval" },
 	{ NET_IPV6_MLD_MAX_MSF,		"mld_max_msf" },
+	{ 2088 /* IPQ_QMAX */,		"ip6_queue_maxlen" },
 	{}
 };
 
@@ -722,6 +723,7 @@ static struct trans_ctl_table trans_net_table[] = {
 	{ NET_LLC,		"llc",		trans_net_llc_table },
 	{ NET_NETFILTER,	"netfilter",	trans_net_netfilter_table },
 	{ NET_DCCP,		"dccp",		trans_net_dccp_table },
+	{ 2089,			"nf_conntrack_max" },
 	{}
 };
 
Signature · 1 line
1.5.1.1.181.g2de0
#50 lore raw

PATCH 7/7 sysctl: Remove the cad_pid binary sysctl path

It looks like we inadvertently killed the cad_pid binary sysctl support when cap_pid was changed to be a struct pid. Since no one has complained just remove the binary path.

---
 kernel/sysctl.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
kernel/sysctl.c +0 -1
index f18e7ec..6d01497 100644
@@ -494,7 +494,6 @@ static struct ctl_table kern_table[] = {
 #endif
 #ifdef CONFIG_PROC_SYSCTL
 	{
-		.ctl_name	= KERN_CADPID,
 		.procname	= "cad_pid",
 		.data		= NULL,
 		.maxlen		= sizeof (int),
Signature · 1 line
1.5.1.1.181.g2de0
Acked-by on v1 1/7
#51 lore raw

Re: [PATCH 1/7] sysctl: Remove broken cdrom binary sysctls

In reply to Eric W. Biederman
Quoted 9 lines · On Fri, 10 Aug 2007 15:00:05 -0600 [email protected] (Eric W. Biederman)…

The binary interface for the cdrom sysctls can't possilby work. So remove the binary sysctls and reduce cdrom_sysctl_handler to it's essentials (to kill the uses of ctl_name).

Since the last time this patch was posted I radically simplified cdrom_sysctl_helper to meet address Alan's objections.

#52 lore raw
In reply to Andrew Morton
Quoted 6 lines · Andrew Morton

There seems to be rather a lot of damage here.

I assume that the sysctl changes are what caused the netfilter oopses.

- nf_conntrack_init() calls nf_conntrack_expect_init() which fails due to sysctl problems.

In particular sysctl_check_table finds issues with the sysctl table so register_sysctl_table refuses to register it.

Quoted 4 lines

- nf_conntrack_init() bales out without calling nf_conntrack_helper_init()

So nf_ct_helper_hsize never gets initialised.

Quoted 8 lines

- Later, netfilter client code calls helper_hash(), which gets a divide-by-zero due to nf_ct_helper_hsize==0.

yeah, that's a netfilter bug, but we're trying to get kernels tested here. If I'm feeling energetic I'll drop the sysctl changes and do rc2-mm3. Probably I won't feel energetic, but we'll need a lot of fixes here before I can release the sysctl changes in another -mm, please.

As a cheap workaround it should be possible to disable SYSCTL support in 2.6.23-rc2-mm2 to get around these issues.

Andrew for the moment I have just sent you fixes for all of the issues that I am aware of. Mostly they are cheap kill the sys_sysctl() support patches.

Hopefully that is enough to bring the pain level down to manageable.

I hadn't anticipated subsystems failing because they could not register their sysctl tables. I was simply expecting things not to show up in /proc/sys. And more of the pain of making working sysctl tables to be pushed back to developers.

Eric

#53 lore raw
In reply to Gabriel C
Quoted 16 lines · Gabriel C
Quoted 6 lines · Michal Piotrowski

Andrew Morton pisze:

Quoted 2 lines

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

Yet another sysctl table check failed

Quoted 8 lines
[   88.949055] Netfilter messages via NETLINK v0.30.
[   89.485399] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   89.491892] sysctl table check failed: /net/netfilter/nf_conntrack_generic_timeout .3.19.13 Missing strategy
[   89.558178] xt_state: Unknown symbol nf_conntrack_untracked
[   89.563942] xt_state: Unknown symbol nf_ct_l3proto_module_put
[   89.569870] xt_state: Unknown symbol nf_ct_l3proto_try_module_get
[   90.852319] NET: Registered protocol family 17
Quoted 4 lines

And maybe this ?

http://lkml.org/lkml/2007/8/10/112

Exactly the same issue here while modprobe nf_conntrack_amanda.

Quoted 2 lines

Gabriel

Regards,
Michal

Signature · 2 lines
LOG
http://www.stardust.webpages.pl/log/
#54 lore raw

arch/i386/kernel/setup.c - compile error (Re: 2.6.23-rc2-mm2)

In reply to Andrew Morton
Quoted 2 lines

git-newsetup.patch

...

arch/i386/kernel/setup.c: In function 'setup_arch':
arch/i386/kernel/setup.c:547: error: 'PARAM' undeclared (first use in this function) arch/i386/kernel/setup.c:547: error: (Each undeclared identifier is reported only once arch/i386/kernel/setup.c:547: error: for each function it appears in.) make[1]: *** [arch/i386/kernel/setup.o] Error 1
make: *** [arch/i386/kernel] Error 2
make: *** Waiting for unfinished jobs....

....

Got it on a randconfig :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-25

author maintainer
#55 lore raw

Re: arch/i386/kernel/setup.c - compile error (Re: 2.6.23-rc2-mm2)

Quoted 13 lines · On Fri, 10 Aug 2007 19:55:53 +0200 Gabriel C <[email protected]> wrote:
Quoted 2 lines

git-newsetup.patch

...

arch/i386/kernel/setup.c: In function 'setup_arch':
arch/i386/kernel/setup.c:547: error: 'PARAM' undeclared (first use in this function) arch/i386/kernel/setup.c:547: error: (Each undeclared identifier is reported only once arch/i386/kernel/setup.c:547: error: for each function it appears in.) make[1]: *** [arch/i386/kernel/setup.o] Error 1
make: *** [arch/i386/kernel] Error 2
make: *** Waiting for unfinished jobs....

Quoted 5 lines

....

Got it on a randconfig :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-25

PARAM got removed, but include/asm-i386/mach-voyager/setup_arch.h still uses it.

#56 lore raw

Re: arch/i386/kernel/setup.c - compile error (Re: 2.6.23-rc2-mm2)

Quoted 14 lines · Andrew Morton
Quoted 11 lines · On Fri, 10 Aug 2007 19:55:53 +0200 Gabriel C <[email protected]> wrote:
Quoted 1 line

git-newsetup.patch

...

arch/i386/kernel/setup.c: In function 'setup_arch':
arch/i386/kernel/setup.c:547: error: 'PARAM' undeclared (first use in this function) arch/i386/kernel/setup.c:547: error: (Each undeclared identifier is reported only once arch/i386/kernel/setup.c:547: error: for each function it appears in.) make[1]: *** [arch/i386/kernel/setup.o] Error 1
make: *** [arch/i386/kernel] Error 2
make: *** Waiting for unfinished jobs....

Quoted 10 lines
Quoted 5 lines

....

Got it on a randconfig :

http://194.231.229.228/kernel/mm/2.6.23-rc2-mm2/randconfig-auto-25

PARAM got removed, but include/asm-i386/mach-voyager/setup_arch.h still uses it.

Hmm voyager is somewhat broken ?

I reported 2 other problems already but no one seems to care.

http://marc.info/?l=linux-kernel&m=118505611205505&w=2 ( some warnings )
http://lkml.org/lkml/2007/7/23/167 ( compile error on !SMP )

#57 lore raw
In reply to Andrew Morton
Quoted 5 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

- Various problems from 2.6.23-rc2-mm1 were fixed

I have just noticed that the B44 drivers now depends on BROKEN. It was the already case in 2.6.23-rc2-mm1 but not 2.6.23-rc1-mm2. Is it something really wanted?

Signature · 4 lines
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   [email protected]         | [email protected]
   `-    people.debian.org/~aurel32 | www.aurel32.net
author maintainer
#58 lore raw
Quoted 11 lines · On Fri, 10 Aug 2007 22:08:01 +0200 Aurelien Jarno <[email protected]> wrote:
Quoted 5 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

- Various problems from 2.6.23-rc2-mm1 were fixed

I have just noticed that the B44 drivers now depends on BROKEN. It was the already case in 2.6.23-rc2-mm1 but not 2.6.23-rc1-mm2. Is it something really wanted?

I was leaving it that way until the ssb code all turned up in git-wireless's #mm-master branch. From a quick peek it seems that this has now happened, so I'll drop that patch and see how we get on.

git-wireless now has the usual git catastrophe when merging it against the recently-discovered net-2.6.24 tree, so I'll need to do something about that first.

#59 lore raw
Quoted 3 lines · Andrew Morton

git-wireless now has the usual git catastrophe when merging it against the recently-discovered net-2.6.24 tree, so I'll need to do something about that first.

I have rebased the wireless-dev tree, and the mm-master branch there should specifically avoid these merge conflicts.

Hth!

John

Signature · 2 lines
John W. Linville
[email protected]
#60 lore raw

[PATCH] Re: 2.6.23-rc2-mm2: sata disk going slow

In reply to Andrew Morton

Why is the G5 so slow with 2.6.23-rc2-mm2? hdparm -t shows 1.8MB/sec instead of 58MB/sec. alpm-increase-number-of-allowable-device-flags.patch (raising ATA_DFLAG_CFG_MASK) turns out to be the guilty party: though the problem doesn't appear until the next patch, which adds ATA_DFLAG_IPM as the same bit as ATA_DFLAG_PIO. Here's a hotfix against top of -rc2-mm2.

---

 include/linux/libata.h |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
include/linux/libata.h +3 -3
@@ -143,9 +143,9 @@ enum {
 	ATA_DFLAG_IPM		= (1 << 8), /* device supports IPM */
 	ATA_DFLAG_CFG_MASK	= (1 << 12) - 1,
 
-	ATA_DFLAG_PIO		= (1 << 8), /* device limited to PIO mode */
-	ATA_DFLAG_NCQ_OFF	= (1 << 9), /* device limited to non-NCQ mode */
-	ATA_DFLAG_SPUNDOWN	= (1 << 10), /* XXX: for spindown_compat */
+	ATA_DFLAG_PIO		= (1 << 12), /* device limited to PIO mode */
+	ATA_DFLAG_NCQ_OFF	= (1 << 13), /* device limited to non-NCQ mode */
+	ATA_DFLAG_SPUNDOWN	= (1 << 14), /* XXX: for spindown_compat */
 	ATA_DFLAG_INIT_MASK	= (1 << 16) - 1,
 
 	ATA_DFLAG_DETACH	= (1 << 16),
#61 lore raw

Re: 2.6.23-rc2-mm2 (libertas)

In reply to Andrew Morton
Quoted 4 lines · On Thu, 9 Aug 2007 22:42:54 -0700 Andrew Morton wrote:

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc2/2.6.23-rc2-mm2/

- Various problems from 2.6.23-rc2-mm1 were fixed

libertas wireless warnings on x86_64:

drivers/net/wireless/libertas/if_cs.c:462: warning: format '%d' expects type 'int', but argument 3 has type 'size_t' drivers/net/wireless/libertas/if_cs.c:538: warning: format '%d' expects type 'int', but argument 3 has type 'size_t'

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

#62 lore raw

PATCH 1/1 unexport ide_tune_dma

In reply to Andrew Morton
Quoted 7 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...
+ide-ide-remove-ide-dma-check.patch

IDE tree updates
...

static code mustn't be exported.

---
8cc9125428c1a2c547e76cd5f37b109b1991eb68

drivers/ide/ide-dma.c +0 -2
index 5a774d8..10c6739 100644
@@ -778,8 +778,6 @@ static int ide_tune_dma(ide_drive_t *drive)
 	return 1;
 }
 
-EXPORT_SYMBOL_GPL(ide_tune_dma);
-
 static int ide_dma_check(ide_drive_t *drive)
 {
 	int vdma = (drive->hwif->host_flags & IDE_HFLAG_VDMA)? 1 : 0;
#63 lore raw

PATCH 1/1 remove fs/ext2/balloc.c:reserve_blocks()

In reply to Andrew Morton

reserve_blocks() is no longer used.

Spotted by the GNU C compiler.

---

 fs/ext2/balloc.c |   35 -----------------------------------
 1 file changed, 35 deletions(-)

4b64502ecee91af41888261d7392688c9283792f

fs/ext2/balloc.c +0 -35
index 1c57a3f..b63f6a4 100644
@@ -133,41 +133,6 @@ error_out:
 	return NULL;
 }
 
-/*
- * Set sb->s_dirt here because the superblock was "logically" altered.  We
- * need to recalculate its free blocks count and flush it out.
- */
-static int reserve_blocks(struct super_block *sb, int count)
-{
-	struct ext2_sb_info *sbi = EXT2_SB(sb);
-	struct ext2_super_block *es = sbi->s_es;
-	unsigned free_blocks;
-	unsigned root_blocks;
-
-	free_blocks = percpu_counter_read_positive(&sbi->s_freeblocks_counter);
-	root_blocks = le32_to_cpu(es->s_r_blocks_count);
-
-	if (free_blocks < count)
-		count = free_blocks;
-
-	if (free_blocks < root_blocks + count && !capable(CAP_SYS_RESOURCE) &&
-	    sbi->s_resuid != current->fsuid &&
-	    (sbi->s_resgid == 0 || !in_group_p (sbi->s_resgid))) {
-		/*
-		 * We are too close to reserve and we are not privileged.
-		 * Can we allocate anything at all?
-		 */
-		if (free_blocks > root_blocks)
-			count = free_blocks - root_blocks;
-		else
-			return 0;
-	}
-
-	percpu_counter_mod(&sbi->s_freeblocks_counter, -count);
-	sb->s_dirt = 1;
-	return count;
-}
-
 static void release_blocks(struct super_block *sb, int count)
 {
 	if (count) {
#64 lore raw

PATCH 1/1 AFLAGS: fix the -g setting

In reply to Andrew Morton

It's -gdwarf-2, not -gdwarf2. With this fix it can actually work.

And since even gcc 3.2 supports -gdwarf-2 there's no reason for checking with as-option.

---
6ab1091b06e762635430b452f82a474890bda230

Makefile +1 -1
index 5b0d58c..accfdc4 100644
@@ -504,7 +504,7 @@ endif
 
 ifdef CONFIG_DEBUG_INFO
 CFLAGS		+= -g
-AFLAGS		+= $(call as-option, -gdwarf2)
+AFLAGS		+= -gdwarf-2
 endif
 
 # Force gcc to behave correct even for buggy distributions
author maintainer
#65 lore raw

Re: [-mm patch] AFLAGS: fix the -g setting

Quoted 1 line · On Tue, 14 Aug 2007 23:23:29 +0200 Adrian Bunk <[email protected]> wrote:

It's -gdwarf-2, not -gdwarf2. With this fix it can actually work.

Andreas Schwab has said "The option is officially called -gdwarf-2, and -gdwarf2 is an alias for backward compatibility.". So the code should be working OK now.

Quoted 20 lines

And since even gcc 3.2 supports -gdwarf-2 there's no reason for checking with as-option.

---
6ab1091b06e762635430b452f82a474890bda230

Makefile +1 -1
index 5b0d58c..accfdc4 100644
@@ -504,7 +504,7 @@ endif
 
 ifdef CONFIG_DEBUG_INFO
 CFLAGS		+= -g
-AFLAGS		+= $(call as-option, -gdwarf2)
+AFLAGS		+= -gdwarf-2
 endif
 
 # Force gcc to behave correct even for buggy distributions
#66 lore raw

Re: [-mm patch] AFLAGS: fix the -g setting

Quoted 8 lines · Andrew Morton
Quoted 1 line · On Tue, 14 Aug 2007 23:23:29 +0200 Adrian Bunk <[email protected]> wrote:

It's -gdwarf-2, not -gdwarf2. With this fix it can actually work.

Andreas Schwab has said "The option is officially called -gdwarf-2, and -gdwarf2 is an alias for backward compatibility.". So the code should be working OK now.

Both GNU gcc 3.2.3 downloaded from ftp.gnu.org and the Debian GNU/Linux package of GNU gcc 4.2.1 disagree with Andreas:

$ gcc -O2 -gdwarf-2 test.c 
$ gcc -O2 -gdwarf2 test.c 
cc1: error: unrecognised debug output level "dwarf2"
$ gcc --version
gcc (GCC) 4.2.1 (Debian 4.2.1-0)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ /usr/local/DIR/gcc-3.2.3/bin/gcc -O2 -gdwarf2 test.c 
cc1: use -gdwarf -g2 for DWARF v1, level 2
cc1: use -gdwarf-2   for DWARF v2
$ 

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#67 lore raw

Re: [-mm patch] AFLAGS: fix the -g setting

Indeed, Andreas was taling about the as options.
But AFLAGS is in fact passed to $(CC).
Honestly, I don't think there is any reason not just to use -g. If something else should be passed to the assembler, the compiler can be the one to worry about that.

Thanks,
Roland

#68 lore raw

PATCH 1/1 unexport cap_inode_killpriv

In reply to Andrew Morton
Quoted 7 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...
+file-capabilities-clear-fcaps-on-inode-change.patch

file caps update
...

This patch removes the unused EXPORT_SYMBOL(cap_inode_killpriv).

---
68ca3bcc4918d0b84a97318f60fb74c4600d9f6b

security/commoncap.c +0 -1
index 7816cdc..9ec5890 100644
@@ -543,7 +543,6 @@ EXPORT_SYMBOL(cap_bprm_apply_creds);
 EXPORT_SYMBOL(cap_bprm_secureexec);
 EXPORT_SYMBOL(cap_inode_setxattr);
 EXPORT_SYMBOL(cap_inode_removexattr);
-EXPORT_SYMBOL(cap_inode_killpriv);
 EXPORT_SYMBOL(cap_task_post_setuid);
 EXPORT_SYMBOL(cap_task_kill);
 EXPORT_SYMBOL(cap_task_setscheduler);
Acked-by on v1 1/1
#69 lore raw

Re: [-mm patch] unexport cap_inode_killpriv

Quoted 6 lines · Adrian Bunk
Quoted 5 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...
+file-capabilities-clear-fcaps-on-inode-change.patch

Quoted 6 lines
Quoted 2 lines

file caps update
...

This patch removes the unused EXPORT_SYMBOL(cap_inode_killpriv).

Quoted 7 lines

---
68ca3bcc4918d0b84a97318f60fb74c4600d9f6b

security/commoncap.c +0 -0
index 7816cdc..9ec5890 100644

security/commoncap.c EXPORT_SYMBOL(cap_bprm_apply_creds); · line 548

Quoted 7 lines
security/commoncap.c +0 -1
@@ -543,7 +543,6 @@ EXPORT_SYMBOL(cap_bprm_apply_creds);
 EXPORT_SYMBOL(cap_bprm_secureexec);
 EXPORT_SYMBOL(cap_inode_setxattr);
 EXPORT_SYMBOL(cap_inode_removexattr);
-EXPORT_SYMBOL(cap_inode_killpriv);
 EXPORT_SYMBOL(cap_task_post_setuid);
 EXPORT_SYMBOL(cap_task_kill);
 EXPORT_SYMBOL(cap_task_setscheduler);

Ah yes, bc LSMs can't be modules any more. But then, why still export cap_task_setscheduler, for instance?

-serge

#70 lore raw

Re: [-mm patch] unexport cap_inode_killpriv

Quoted 25 lines · Serge E. Hallyn
Quoted 6 lines · Adrian Bunk
Quoted 5 lines · Andrew Morton

...
Changes since 2.6.23-rc1-mm2:
...
+file-capabilities-clear-fcaps-on-inode-change.patch

Quoted 6 lines
Quoted 2 lines

file caps update
...

This patch removes the unused EXPORT_SYMBOL(cap_inode_killpriv).

Quoted 9 lines

---
68ca3bcc4918d0b84a97318f60fb74c4600d9f6b

security/commoncap.c +0 -0
index 7816cdc..9ec5890 100644
@@ -543,7 +543,6 @@ EXPORT_SYMBOL(cap_bprm_apply_creds);
 EXPORT_SYMBOL(cap_bprm_secureexec);
 EXPORT_SYMBOL(cap_inode_setxattr);
Quoted 8 lines

security/commoncap.c EXPORT_SYMBOL(cap_bprm_apply_creds); · line 548

Quoted 5 lines
security/commoncap.c +0 -1
 EXPORT_SYMBOL(cap_inode_removexattr);
-EXPORT_SYMBOL(cap_inode_killpriv);
 EXPORT_SYMBOL(cap_task_post_setuid);
 EXPORT_SYMBOL(cap_task_kill);
 EXPORT_SYMBOL(cap_task_setscheduler);

Ah yes, bc LSMs can't be modules any more. But then, why still export cap_task_setscheduler, for instance?

Look at my next patch. :-)

Quoted 1 line

-serge

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#71 lore raw
In reply to Andrew Morton
Quoted 1 line · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-

rc2/2.6.23-rc2-mm2/

Quoted 7 lines

- Various problems from 2.6.23-rc2-mm1 were fixed

Boilerplate:

Quoted 9 lines

- See the `hot-fixes' directory for any important updates to this patchset.

- To fetch an -mm tree using git, use (for example)

git-fetch
git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git
tag v2.6.16-rc2-mm1 git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1

Hi Andrew,

the git tree you mentioned in the boilerplate doesn't seem to have been updated in about 7 weeks.
2.6.22-rc6-mm1 is the last tag I can see on the summary page. Is something broken ?
Cheers

Richard

author maintainer
#72 lore raw
Quoted 14 lines · On Sun, 19 Aug 2007 15:56:07 +0000 (UTC) richard kennedy…
Quoted 1 line · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-

rc2/2.6.23-rc2-mm2/

Quoted 10 lines

- Various problems from 2.6.23-rc2-mm1 were fixed

Boilerplate:

- See the `hot-fixes' directory for any important updates to this patchset.

Quoted 7 lines
Quoted 6 lines

- To fetch an -mm tree using git, use (for example)

git-fetch
git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git
tag v2.6.16-rc2-mm1 git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1

Hi Andrew,

Please always do reply-to-all. Otherwise you end up thinking that you're being ignored ;)

Quoted 4 lines

the git tree you mentioned in the boilerplate doesn't seem to have been updated in about 7 weeks.
2.6.22-rc6-mm1 is the last tag I can see on the summary page. Is something broken ?

Yes, the software which auto-imports -mm into git appears to have broken a few weeks ago. Matthias has been informed, but I guess he is busy.

#73 lore raw
Quoted 28 lines · Andrew Morton
Quoted 14 lines · On Sun, 19 Aug 2007 15:56:07 +0000 (UTC) richard kennedy…
Quoted 1 line · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-

rc2/2.6.23-rc2-mm2/

Quoted 10 lines

- Various problems from 2.6.23-rc2-mm1 were fixed

Boilerplate:

- See the `hot-fixes' directory for any important updates to this patchset.

Quoted 7 lines
Quoted 6 lines

- To fetch an -mm tree using git, use (for example)

git-fetch
git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git
tag v2.6.16-rc2-mm1 git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1

Hi Andrew,

Please always do reply-to-all. Otherwise you end up thinking that you're being ignored ;)

Quoted 7 lines
Quoted 4 lines

the git tree you mentioned in the boilerplate doesn't seem to have been updated in about 7 weeks.
2.6.22-rc6-mm1 is the last tag I can see on the summary page. Is something broken ?

Yes, the software which auto-imports -mm into git appears to have broken a few weeks ago. Matthias has been informed, but I guess he is busy.

Sorry about not replying all, I'm using the gmane newsgroup interface and I hoped it would do the right thing. I guess I'll just have to subscribe to the lkml fire-hose instead ;)
Richard