Bug#476292: linux-image-2.6.24-1-parisc64: 64 bit kernel panics on boot in handle_interruption
Package: linux-image-2.6.24-1-parisc64
Version: 2.6.24-5
Severity: critical
Tags: patch
Justification: breaks the whole system
The parisc 64 bit kernel panics on boot with this:
CC net/ipv4/netfilter/iptable_raw.mod.o
CC net/ipv4/tcp_diag.mod.o
CC net/ipv4/tunnel4.mod.o
CC net/ipv4/xfrm4_mode_beet.mod.o
CC net/ipv4/xfrm4_tunnel.mod.o
CC net/key/af_key.mod.o
CC net/llc/llc.mod.o
CC net/llc/llc2.mod.o
CC net/netfilter/nfnetlink_log.mod.o
CC net/netfilter/nfnetlink.mod.o
CC net/netfilter/nfnetlink_queue.mod.o
CC net/netfilter/xt_CLASSIFY.mod.o
CC net/netfilter/x_tables.mod.o
CC net/netfilter/xt_DSCP.mod.o
CC net/netfilter/xt_MARK.mod.o
CC net/netfilter/xt_NFQUEUE.mod.o
CC net/netfilter/xt_comment.mod.o
CC net/netfilter/xt_dccp.mod.o
CC net/netfilter/xt_dscp.mod.o
CC net/netfilter/xt_esp.mod.o
CC net/netfilter/xt_length.mod.o
CC net/netfilter/xt_limit.mod.o
CC net/netfilter/xt_mac.mod.o
CC net/netfilter/xt_mark.mod.o
CC net/netfilter/xt_multiport.mod.o
CC net/netfilter/xt_pkttype.mod.o
CC net/netfilter/xt_policy.mod.o
CC net/netfilter/xt_realm.mod.o
CC net/netfilter/xt_sctp.mod.o
CC net/netfilter/xt_string.mod.o
CC net/netfilter/xt_tcpmss.mod.o
CC net/netfilter/xt_tcpudp.mod.o
CC net/packet/af_packet.mod.o
CC net/sctp/sctp.mod.o
CC net/sunrpc/auth_gss/auth_rpcgss.mod.o
CC net/sunrpc/auth_gss/rpcsec_gss_krb5.mod.o
CC net/sunrpc/auth_gss/rpcsec_gss_spkm3.mod.o
CC net/sunrpc/sunrpc.mod.o
CC net/tipc/tipc.mod.o
CC net/xfrm/xfrm_user.mod.o
CC sound/ac97_bus.mod.o
CC sound/core/oss/snd-mixer-oss.mod.o
CC sound/core/oss/snd-pcm-oss.mod.o
CC sound/core/seq/oss/snd-seq-oss.mod.o
CC sound/core/seq/snd-seq-device.mod.o
CC sound/core/seq/snd-seq-dummy.mod.o
CC sound/core/seq/snd-seq-midi-event.mod.o
CC sound/core/seq/snd-seq-midi.mod.o
CC sound/core/seq/snd-seq.mod.o
CC sound/core/snd-hwdep.mod.o
CC sound/core/snd-page-alloc.mod.o
CC sound/core/snd-pcm.mod.o
CC sound/core/snd-rawmidi.mod.o
CC sound/core/snd-timer.mod.o
CC sound/core/snd.mod.o
CC sound/parisc/snd-harmony.mod.o
CC sound/pci/ac97/snd-ac97-codec.mod.o
CC sound/pci/rme9652/snd-hdspm.mod.o
CC sound/pci/snd-ad1889.mod.o
LD [M] crypto/aes_generic.ko
CC sound/soundcore.mod.o
LD [M] crypto/anubis.ko
LD [M] crypto/arc4.ko
LD [M] crypto/blkcipher.ko
LD [M] crypto/blowfish.ko
LD [M] crypto/cast5.ko
LD [M] crypto/cast6.ko
LD [M] crypto/cbc.ko
LD [M] crypto/crc32c.ko
LD [M] crypto/crypto_null.ko
LD [M] crypto/deflate.ko
LD [M] crypto/des_generic.ko
LD [M] crypto/ecb.ko
LD [M] crypto/khazad.ko
LD [M] crypto/gf128mul.ko
LD [M] crypto/md4.ko
LD [M] crypto/md5.ko
LD [M] crypto/michael_mic.ko
LD [M] crypto/serpent.ko
LD [M] crypto/sha256_generic.ko
LD [M] crypto/sha512.ko
LD [M] crypto/tcrypt.ko
LD [M] crypto/tea.ko
LD [M] crypto/tgr192.ko
LD [M] crypto/twofish.ko
LD [M] crypto/twofish_common.ko
LD [M] crypto/wp512.ko
LD [M] drivers/base/firmware_class.ko
LD [M] drivers/block/aoe/aoe.ko
LD [M] drivers/block/cryptoloop.ko
LD [M] drivers/block/loop.ko
LD [M] drivers/block/pktcdvd.ko
LD [M] drivers/block/sx8.ko
LD [M] drivers/block/ub.ko
LD [M] drivers/block/umem.ko
LD [M] drivers/cdrom/cdrom.ko
LD [M] drivers/char/lp.ko
LD [M] drivers/char/agp/parisc-agp.ko
LD [M] drivers/char/raw.ko
LD [M] drivers/hid/usbhid/usbhid.ko
LD [M] drivers/input/keyboard/hil_kbd.ko
LD [M] drivers/input/keyboard/hilkbd.ko
LD [M] drivers/input/misc/hp_sdc_rtc.ko
LD [M] drivers/input/misc/uinput.ko
LD [M] drivers/input/mouse/hil_ptr.ko
LD [M] drivers/input/mouse/psmouse.ko
LD [M] drivers/input/mouse/sermouse.ko
LD [M] drivers/input/serio/parkbd.ko
LD [M] drivers/input/serio/pcips2.ko
LD [M] drivers/input/serio/serio_raw.ko
LD [M] drivers/md/dm-crypt.ko
LD [M] drivers/input/serio/serport.ko
LD [M] drivers/md/dm-emc.ko
LD [M] drivers/md/dm-mirror.ko
LD [M] drivers/md/dm-mod.ko
LD [M] drivers/md/dm-multipath.ko
LD [M] drivers/md/dm-round-robin.ko
LD [M] drivers/md/dm-snapshot.ko
LD [M] drivers/md/dm-zero.ko
LD [M] drivers/md/faulty.ko
LD [M] drivers/md/linear.ko
LD [M] drivers/md/md-mod.ko
LD [M] drivers/md/multipath.ko
LD [M] drivers/md/raid1.ko
LD [M] drivers/md/raid0.ko
LD [M] drivers/md/raid10.ko
LD [M] drivers/message/fusion/mptbase.ko
LD [M] drivers/message/fusion/mptctl.ko
LD [M] drivers/message/fusion/mptfc.ko
LD [M] drivers/message/fusion/mptsas.ko
LD [M] drivers/message/fusion/mptscsih.ko
LD [M] drivers/message/fusion/mptspi.ko
LD [M] drivers/net/3c59x.ko
LD [M] drivers/net/8139too.ko
LD [M] drivers/net/acenic.ko
LD [M] drivers/net/b44.ko
LD [M] drivers/net/bonding/bonding.ko
LD [M] drivers/net/bsd_comp.ko
LD [M] drivers/net/cassini.ko
LD [M] drivers/net/chelsio/cxgb.ko
LD [M] drivers/net/dummy.ko
LD [M] drivers/net/e100.ko
LD [M] drivers/net/e1000/e1000.ko
LD [M] drivers/net/eepro100.ko
LD [M] drivers/net/epic100.ko
LD [M] drivers/net/hamachi.ko
LD [M] drivers/net/forcedeth.ko
LD [M] drivers/net/lasi_82596.ko
LD [M] drivers/net/mii.ko
LD [M] drivers/net/myri10ge/myri10ge.ko
LD [M] drivers/net/netconsole.ko
LD [M] drivers/net/pcnet32.ko
LD [M] drivers/net/phy/davicom.ko
LD [M] drivers/net/phy/cicada.ko
LD [M] drivers/net/phy/libphy.ko
LD [M] drivers/net/phy/lxt.ko
LD [M] drivers/net/phy/marvell.ko
LD [M] drivers/net/phy/qsemi.ko
LD [M] drivers/net/phy/smsc.ko
LD [M] drivers/net/phy/vitesse.ko
LD [M] drivers/net/ppp_async.ko
LD [M] drivers/net/ppp_deflate.ko
LD [M] drivers/net/ppp_mppe.ko
LD [M] drivers/net/ppp_generic.ko
LD [M] drivers/net/ppp_synctty.ko
LD [M] drivers/net/pppoe.ko
LD [M] drivers/net/pppox.ko
LD [M] drivers/net/s2io.ko
LD [M] drivers/net/sis900.ko
LD [M] drivers/net/sk98lin/sk98lin.ko
LD [M] drivers/net/skge.ko
LD [M] drivers/net/slhc.ko
LD [M] drivers/net/sundance.ko
LD [M] drivers/net/sunhme.ko
LD [M] drivers/net/tg3.ko
LD [M] drivers/net/tulip/de2104x.ko
LD [M] drivers/net/tulip/de4x5.ko
LD [M] drivers/net/tulip/tulip.ko
LD [M] drivers/net/tulip/uli526x.ko
LD [M] drivers/net/tulip/winbond-840.ko
LD [M] drivers/net/tun.ko
LD [M] drivers/net/via-rhine.ko
LD [M] drivers/net/yellowfin.ko
LD [M] drivers/parport/parport.ko
LD [M] drivers/parport/parport_pc.ko
LD [M] drivers/scsi/3w-9xxx.ko
LD [M] drivers/scsi/3w-xxxx.ko
LD [M] drivers/scsi/53c700.ko
LD [M] drivers/scsi/a100u2w.ko
LD [M] drivers/scsi/aacraid/aacraid.ko
LD [M] drivers/scsi/aic7xxx/aic7xxx.ko
LD [M] drivers/scsi/aic7xxx_old.ko
LD [M] drivers/scsi/aic7xxx/aic79xx.ko
LD [M] drivers/scsi/aic94xx/aic94xx.ko
LD [M] drivers/scsi/arcmsr/arcmsr.ko
LD [M] drivers/scsi/ch.ko
LD [M] drivers/scsi/dc395x.ko
LD [M] drivers/scsi/ips.ko
LD [M] drivers/scsi/imm.ko
LD [M] drivers/scsi/iscsi_tcp.ko
LD [M] drivers/scsi/lasi700.ko
LD [M] drivers/scsi/libiscsi.ko
LD [M] drivers/scsi/libsas/libsas.ko
LD [M] drivers/scsi/lpfc/lpfc.ko
LD [M] drivers/scsi/megaraid.ko
LD [M] drivers/scsi/megaraid/megaraid_mbox.ko
LD [M] drivers/scsi/megaraid/megaraid_mm.ko
LD [M] drivers/scsi/megaraid/megaraid_sas.ko
LD [M] drivers/scsi/ppa.ko
LD [M] drivers/scsi/qla2xxx/qla2xxx.ko
LD [M] drivers/scsi/qla1280.ko
LD [M] drivers/scsi/qla4xxx/qla4xxx.ko
LD [M] drivers/scsi/raid_class.ko
LD [M] drivers/scsi/scsi_debug.ko
LD [M] drivers/scsi/scsi_mod.ko
LD [M] drivers/scsi/scsi_transport_fc.ko
LD [M] drivers/scsi/scsi_transport_iscsi.ko
LD [M] drivers/scsi/scsi_transport_sas.ko
LD [M] drivers/scsi/scsi_transport_spi.ko
LD [M] drivers/scsi/scsi_wait_scan.ko
LD [M] drivers/scsi/sd_mod.ko
LD [M] drivers/scsi/sg.ko
LD [M] drivers/scsi/sr_mod.ko
LD [M] drivers/scsi/st.ko
LD [M] drivers/scsi/stex.ko
LD [M] drivers/scsi/sym53c8xx_2/sym53c8xx.ko
LD [M] drivers/scsi/zalon7xx.ko
LD [M] drivers/ssb/ssb.ko
LD [M] drivers/serial/jsm/jsm.ko
LD [M] drivers/usb/core/usbcore.ko
LD [M] drivers/usb/host/isp116x-hcd.ko
LD [M] drivers/usb/misc/cytherm.ko
LD [M] drivers/usb/misc/emi26.ko
LD [M] drivers/usb/misc/emi62.ko
LD [M] drivers/usb/misc/idmouse.ko
LD [M] drivers/usb/misc/ldusb.ko
LD [M] drivers/usb/misc/legousbtower.ko
LD [M] drivers/usb/misc/usbled.ko
LD [M] drivers/usb/mon/usbmon.ko
LD [M] drivers/usb/storage/usb-storage.ko
LD [M] fs/autofs/autofs.ko
LD [M] fs/autofs4/autofs4.ko
LD [M] fs/binfmt_misc.ko
LD [M] fs/exportfs/exportfs.ko
LD [M] fs/ext2/ext2.ko
LD [M] fs/fat/fat.ko
LD [M] fs/ext3/ext3.ko
LD [M] fs/fuse/fuse.ko
LD [M] fs/freevxfs/freevxfs.ko
LD [M] fs/isofs/isofs.ko
LD [M] fs/jbd/jbd.ko
LD [M] fs/lockd/lockd.ko
LD [M] fs/mbcache.ko
LD [M] fs/minix/minix.ko
LD [M] fs/msdos/msdos.ko
LD [M] fs/nfs/nfs.ko
LD [M] fs/nfs_common/nfs_acl.ko
LD [M] fs/nfsd/nfsd.ko
LD [M] fs/nls/nls_ascii.ko
LD [M] fs/nls/nls_cp1251.ko
LD [M] fs/nls/nls_cp1255.ko
LD [M] fs/nls/nls_cp1250.ko
LD [M] fs/nls/nls_cp437.ko
LD [M] fs/nls/nls_cp737.ko
LD [M] fs/nls/nls_cp775.ko
LD [M] fs/nls/nls_cp852.ko
LD [M] fs/nls/nls_cp850.ko
LD [M] fs/nls/nls_cp855.ko
LD [M] fs/nls/nls_cp860.ko
LD [M] fs/nls/nls_cp857.ko
LD [M] fs/nls/nls_cp861.ko
LD [M] fs/nls/nls_cp862.ko
LD [M] fs/nls/nls_cp863.ko
LD [M] fs/nls/nls_cp864.ko
LD [M] fs/nls/nls_cp866.ko
LD [M] fs/nls/nls_cp865.ko
LD [M] fs/nls/nls_cp874.ko
LD [M] fs/nls/nls_cp869.ko
LD [M] fs/nls/nls_cp932.ko
LD [M] fs/nls/nls_cp936.ko
LD [M] fs/nls/nls_cp949.ko
LD [M] fs/nls/nls_iso8859-1.ko
LD [M] fs/nls/nls_cp950.ko
LD [M] fs/nls/nls_euc-jp.ko
LD [M] fs/nls/nls_iso8859-13.ko
LD [M] fs/nls/nls_iso8859-14.ko
LD [M] fs/nls/nls_iso8859-15.ko
LD [M] fs/nls/nls_iso8859-2.ko
LD [M] fs/nls/nls_iso8859-3.ko
LD [M] fs/nls/nls_iso8859-4.ko
LD [M] fs/nls/nls_iso8859-5.ko
LD [M] fs/nls/nls_iso8859-6.ko
LD [M] fs/nls/nls_iso8859-7.ko
LD [M] fs/nls/nls_iso8859-9.ko
LD [M] fs/nls/nls_koi8-r.ko
LD [M] fs/nls/nls_koi8-ru.ko
LD [M] fs/nls/nls_koi8-u.ko
LD [M] fs/nls/nls_utf8.ko
LD [M] fs/quota_v1.ko
LD [M] fs/quota_v2.ko
LD [M] fs/reiserfs/reiserfs.ko
LD [M] fs/romfs/romfs.ko
LD [M] fs/sysv/sysv.ko
LD [M] fs/ufs/ufs.ko
LD [M] fs/vfat/vfat.ko
LD [M] lib/crc-ccitt.ko
LD [M] lib/crc16.ko
LD [M] lib/libcrc32c.ko
LD [M] lib/ts_bm.ko
LD [M] lib/ts_fsm.ko
LD [M] lib/ts_kmp.ko
LD [M] net/802/p8022.ko
LD [M] lib/zlib_deflate/zlib_deflate.ko
LD [M] net/802/psnap.ko
LD [M] net/8021q/8021q.ko
LD [M] net/dccp/ccids/dccp_ccid2.ko
LD [M] net/dccp/ccids/dccp_ccid3.ko
LD [M] net/dccp/ccids/lib/dccp_tfrc_lib.ko
LD [M] net/dccp/dccp.ko
LD [M] net/dccp/dccp_diag.ko
LD [M] net/dccp/dccp_ipv4.ko
LD [M] net/ieee80211/ieee80211.ko
LD [M] net/ieee80211/ieee80211_crypt.ko
LD [M] net/ieee80211/ieee80211_crypt_ccmp.ko
LD [M] net/ieee80211/ieee80211_crypt_wep.ko
LD [M] net/ipv4/esp4.ko
LD [M] net/ipv4/ah4.ko
LD [M] net/ipv4/inet_diag.ko
LD [M] net/ipv4/inet_lro.ko
LD [M] net/ipv4/ip_gre.ko
LD [M] net/ipv4/ipcomp.ko
LD [M] net/ipv4/ipip.ko
LD [M] net/ipv4/ipvs/ip_vs.ko
LD [M] net/ipv4/ipvs/ip_vs_ftp.ko
LD [M] net/ipv4/ipvs/ip_vs_dh.ko
LD [M] net/ipv4/ipvs/ip_vs_lblc.ko
LD [M] net/ipv4/ipvs/ip_vs_lblcr.ko
LD [M] net/ipv4/ipvs/ip_vs_lc.ko
LD [M] net/ipv4/ipvs/ip_vs_nq.ko
LD [M] net/ipv4/ipvs/ip_vs_rr.ko
LD [M] net/ipv4/ipvs/ip_vs_sed.ko
LD [M] net/ipv4/ipvs/ip_vs_sh.ko
LD [M] net/ipv4/ipvs/ip_vs_wlc.ko
LD [M] net/ipv4/ipvs/ip_vs_wrr.ko
LD [M] net/ipv4/netfilter/arp_tables.ko
LD [M] net/ipv4/netfilter/arpt_mangle.ko
LD [M] net/ipv4/netfilter/arptable_filter.ko
LD [M] net/ipv4/netfilter/ip_queue.ko
LD [M] net/ipv4/netfilter/ip_tables.ko
LD [M] net/ipv4/netfilter/ipt_ECN.ko
LD [M] net/ipv4/netfilter/ipt_LOG.ko
LD [M] net/ipv4/netfilter/ipt_REJECT.ko
LD [M] net/ipv4/netfilter/ipt_TTL.ko
LD [M] net/ipv4/netfilter/ipt_ULOG.ko
LD [M] net/ipv4/netfilter/ipt_addrtype.ko
LD [M] net/ipv4/netfilter/ipt_ah.ko
LD [M] net/ipv4/netfilter/ipt_ecn.ko
LD [M] net/ipv4/netfilter/ipt_recent.ko
LD [M] net/ipv4/netfilter/ipt_ttl.ko
LD [M] net/ipv4/netfilter/iptable_filter.ko
LD [M] net/ipv4/netfilter/iptable_mangle.ko
LD [M] net/ipv4/netfilter/iptable_raw.ko
LD [M] net/ipv4/tcp_diag.ko
LD [M] net/ipv4/tunnel4.ko
LD [M] net/ipv4/xfrm4_mode_beet.ko
LD [M] net/ipv4/xfrm4_tunnel.ko
LD [M] net/key/af_key.ko
LD [M] net/llc/llc.ko
LD [M] net/llc/llc2.ko
LD [M] net/netfilter/nfnetlink.ko
LD [M] net/netfilter/nfnetlink_log.ko
LD [M] net/netfilter/nfnetlink_queue.ko
LD [M] net/netfilter/x_tables.ko
LD [M] net/netfilter/xt_CLASSIFY.ko
LD [M] net/netfilter/xt_DSCP.ko
LD [M] net/netfilter/xt_MARK.ko
LD [M] net/netfilter/xt_comment.ko
LD [M] net/netfilter/xt_NFQUEUE.ko
LD [M] net/netfilter/xt_dccp.ko
LD [M] net/netfilter/xt_dscp.ko
LD [M] net/netfilter/xt_esp.ko
LD [M] net/netfilter/xt_length.ko
LD [M] net/netfilter/xt_limit.ko
LD [M] net/netfilter/xt_mac.ko
LD [M] net/netfilter/xt_mark.ko
LD [M] net/netfilter/xt_multiport.ko
LD [M] net/netfilter/xt_pkttype.ko
LD [M] net/netfilter/xt_policy.ko
LD [M] net/netfilter/xt_realm.ko
LD [M] net/netfilter/xt_sctp.ko
LD [M] net/netfilter/xt_string.ko
LD [M] net/netfilter/xt_tcpmss.ko
LD [M] net/netfilter/xt_tcpudp.ko
LD [M] net/packet/af_packet.ko
LD [M] net/sctp/sctp.ko
LD [M] net/sunrpc/auth_gss/auth_rpcgss.ko
LD [M] net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
LD [M] net/sunrpc/auth_gss/rpcsec_gss_spkm3.ko
LD [M] net/sunrpc/sunrpc.ko
LD [M] net/tipc/tipc.ko
LD [M] net/xfrm/xfrm_user.ko
LD [M] sound/core/oss/snd-mixer-oss.ko
LD [M] sound/ac97_bus.ko
LD [M] sound/core/oss/snd-pcm-oss.ko
LD [M] sound/core/seq/oss/snd-seq-oss.ko
LD [M] sound/core/seq/snd-seq-device.ko
LD [M] sound/core/seq/snd-seq-dummy.ko
LD [M] sound/core/seq/snd-seq-midi-event.ko
LD [M] sound/core/seq/snd-seq-midi.ko
LD [M] sound/core/seq/snd-seq.ko
LD [M] sound/core/snd-hwdep.ko
LD [M] sound/core/snd-page-alloc.ko
LD [M] sound/core/snd-pcm.ko
LD [M] sound/core/snd-rawmidi.ko
LD [M] sound/core/snd-timer.ko
LD [M] sound/core/snd.ko
LD [M] sound/parisc/snd-harmony.ko
LD [M] sound/pci/ac97/snd-ac97-codec.ko
LD [M] sound/pci/rme9652/snd-hdspm.ko
LD [M] sound/pci/snd-ad1889.ko
LD [M] sound/soundcore.ko
jejb@ion>
Broadcast message from root@ion (pts/1) (Tue Apr 15 08:13:52 2008):
The system is going down for reboot NOW!
Use "logout" to leave the shell.
jejb@ion> Connection to ion closed by remote host.
Connection to ion closed.
jejb@gsyprf11> ssh -A -Y ion
Linux ion 2.6.23 #0 SMP Thu Oct 11 22:45:36 PDT 2007 parisc64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue Apr 15 08:20:23 2008 from gsyprf11-tg3
jejb@ion> cd git/stable-2.6/
jejb@ion> git cherry-pick c20a84c91048c76c1379011c96b1a5cee5c7d9a0
Finished one cherry-pick.
Created commit c8d402d: [PARISC] futex: special case cmpxchg NULL in kernel space
1 files changed, 8 insertions(+), 2 deletions(-)
jejb@ion> make -j 5
CHK include/linux/version.h
CHK include/linux/utsrelease.h
CALL scripts/checksyscalls.sh
CHK include/linux/compile.h
CC kernel/futex.o
LD kernel/built-in.o
GEN .version
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
KSYM .tmp_kallsyms1.S
AS .tmp_kallsyms1.o
LD .tmp_vmlinux2
KSYM .tmp_kallsyms2.S
AS .tmp_kallsyms2.o
LD vmlinux.o
MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0xb0): Section mismatch: reference to .init.text:start_kernel (between '$pgt_fill_loop' and 'common_stext')
WARNING: vmlinux.o(.text+0xb4): Section mismatch: reference to .init.text:start_kernel (between '$pgt_fill_loop' and 'common_stext')
WARNING: vmlinux.o(.text+0x210): Section mismatch: reference to .init.text:smp_callin (between 'smp_slave_stext' and 'flush_tlb_all_local')
WARNING: vmlinux.o(.text+0x214): Section mismatch: reference to .init.text:smp_callin (between 'smp_slave_stext' and 'flush_tlb_all_local')
WARNING: vmlinux.o(.text.write_profile+0x1ac): Section mismatch: reference to .init.text:setup_profiling_timer (after 'write_profile')
Connection to ion closed.
jejb@gsyprf11> cat tmp.panic
LBA: Truncating lmmio_space [fffffffff0000000/fffffffffecffffe] to [fffffffff0000000,fffffffffe77ffff]
powersw: Soft power switch support not available.
Backtrace:
[<0000000040142340>] wake_up_new_task+0xd0/0x140
[<00000000401379a8>] calc_delta_mine+0x68/0xf8
[<0000000040137a2c>] calc_delta_mine+0xec/0xf8
[<0000000040118274>] pdc_iodc_print+0xcc/0x190
[<00000000401382c0>] update_rq_clock+0x30/0x48
[<0000000040138328>] cpu_clock+0x50/0x78
[<0000000040137b0c>] update_curr+0xd4/0xe0
[<000000004016d478>] update_wall_time+0x270/0x5b0
[<00000000401623ac>] rcu_process_callbacks+0x6c/0x80
[<0000000040154c48>] run_timer_softirq+0x68/0x2b8
[<000000004014f844>] tasklet_action+0x1a4/0x240
[<000000004013649c>] enqueue_task+0x34/0x58
[<0000000040137df8>] set_next_entity+0x38/0x70
[<000000004010cd14>] schedule_timeout+0xdc/0x158
[<00000000402540f0>] kobject_uevent_env+0x400/0x578
[<00000000402ce51c>] get_device+0x1c/0x30
Kernel Fault: Code=26 regs=000000007f46c7a0 (Addr=0000000000000130)
YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
PSW: 00001000000001000000000000001111 Not tainted
r00-03 000000000804000f 0000000040574d40 0000000040104084 000000007f46c260
r04-07 000000004056dd40 000000007f46c330 0000000000000000 0000000040492684
r08-11 00000000404c9b80 000000007f44e260 0000000000000000 00000000405a5c40
r12-15 00000000405a5440 0000000000000001 0000000040498c58 0000000040439700
r16-19 000000007f46c330 00000000405a5c40 00000000405a5c40 0000000000000000
r20-23 000000007f46c260 0000000000000000 00000000000002e8 0000000000000000
r24-27 0000000000000000 000000007f46c330 00000000403c9d08 000000004056dd40
r28-31 000000007f46c000 000000007f46c660 000000007f46c7a0 000000007f46c000
sr00-03 0000000000000000 0000000000000000 0000000000000000 0000000000000000
sr04-07 0000000000000000 0000000000000000 0000000000000000 0000000000000000
IASQ: 0000000000000000 0000000000000000 IAOQ: 0000000040113d84 0000000040113d88
IIR: 4a770260 ISR: 0000000000000000 IOR: 0000000000000130
CPU: 0 CR30: 000000007f46c000 CR31: fffffff0f0e098e0
ORIG_R28: 00000000401379a8
IAOQ[0]: handle_interruption+0x804/0x890
IAOQ[1]: handle_interruption+0x808/0x890
RP(r2): intr_check_sig+0x0/0x38
Kernel panic - not syncing: Kernel Fault
It's a known bug in 2.6.24 and fixed by this upstream
commit ef1afd4d79f0479960ff36bb5fe6ec6eba1ebff2
Author: Kyle McMartin <kyle@shortfin.cabal.ca>
Date: Mon Feb 18 23:34:34 2008 -0800
[PARISC] pdc_console: fix bizarre panic on boot
I'll request a backport to the 2.6.24 stable tree, but debian will
need to apply this patch to boot on 64 bit systems.
NOTE: I had to report this from my 32 bit system, so it may have some
of the package dependencies wrong.
-- System Information:
Debian Release: lenny/sid
APT prefers testing
APT policy: (650, 'testing')
Architecture: hppa (parisc)
Kernel: Linux 2.6.22-3-parisc
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Versions of packages linux-image-2.6.24-1-parisc depends on:
ii debconf [debconf-2.0] 1.5.20 Debian configuration management sy
ii initramfs-tools [linux-initr 0.91e tools for generating an initramfs
ii module-init-tools 3.3-pre11-4 tools for managing Linux kernel mo
linux-image-2.6.24-1-parisc recommends no packages.
-- debconf information excluded
>From 52d6b37911dfeef2eacae975e4458bf2cf4c0a62 Mon Sep 17 00:00:00 2001
From: Kyle McMartin <kyle@shortfin.cabal.ca>
Date: Mon, 18 Feb 2008 23:34:34 -0800
Subject: [PARISC] pdc_console: fix bizarre panic on boot
Commit 721fdf34167580ff98263c74cead8871d76936e6 introduced a subtle bug
by accidently removing the "static" from iodc_dbuf. This resulted in, what
appeared to be, a trap without *current set to a task. Probably the result of
a trap in real mode while calling firmware.
Also do other misc clean ups. Since the only input from firmware is non
blocking, share iodc_dbuf between input and output, and spinlock the
only callers.
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
---
arch/parisc/kernel/firmware.c | 27 +++++++++++++++++----------
arch/parisc/kernel/pdc_cons.c | 19 +++++++++++++++++--
include/asm-parisc/pdc.h | 3 +--
3 files changed, 35 insertions(+), 14 deletions(-)
diff --git a/arch/parisc/kernel/firmware.c b/arch/parisc/kernel/firmware.c
index 4ab83d5..7177a6c 100644
--- a/arch/parisc/kernel/firmware.c
+++ b/arch/parisc/kernel/firmware.c
@@ -1080,6 +1080,9 @@ void pdc_io_reset_devices(void)
spin_unlock_irqrestore(&pdc_lock, flags);
}
+/* locked by pdc_console_lock */
+static int __attribute__((aligned(8))) iodc_retbuf[32];
+static char __attribute__((aligned(64))) iodc_dbuf[4096];
/**
* pdc_iodc_print - Console print using IODC.
@@ -1091,24 +1094,20 @@ void pdc_io_reset_devices(void)
* Since the HP console requires CR+LF to perform a 'newline', we translate
* "\n" to "\r\n".
*/
-int pdc_iodc_print(unsigned char *str, unsigned count)
+int pdc_iodc_print(const unsigned char *str, unsigned count)
{
- /* XXX Should we spinlock posx usage */
static int posx; /* for simple TAB-Simulation... */
- int __attribute__((aligned(8))) iodc_retbuf[32];
- char __attribute__((aligned(64))) iodc_dbuf[4096];
unsigned int i;
unsigned long flags;
- memset(iodc_dbuf, 0, 4096);
- for (i = 0; i < count && i < 2048;) {
+ for (i = 0; i < count && i < 79;) {
switch(str[i]) {
case '\n':
iodc_dbuf[i+0] = '\r';
iodc_dbuf[i+1] = '\n';
i += 2;
posx = 0;
- break;
+ goto print;
case '\t':
while (posx & 7) {
iodc_dbuf[i] = ' ';
@@ -1124,6 +1123,16 @@ int pdc_iodc_print(unsigned char *str, unsigned count)
}
}
+ /* if we're at the end of line, and not already inserting a newline,
+ * insert one anyway. iodc console doesn't claim to support >79 char
+ * lines. don't account for this in the return value.
+ */
+ if (i == 79 && iodc_dbuf[i-1] != '\n') {
+ iodc_dbuf[i+0] = '\r';
+ iodc_dbuf[i+1] = '\n';
+ }
+
+print:
spin_lock_irqsave(&pdc_lock, flags);
real32_call(PAGE0->mem_cons.iodc_io,
(unsigned long)PAGE0->mem_cons.hpa, ENTRY_IO_COUT,
@@ -1142,11 +1151,9 @@ int pdc_iodc_print(unsigned char *str, unsigned count)
*/
int pdc_iodc_getc(void)
{
- unsigned long flags;
- static int __attribute__((aligned(8))) iodc_retbuf[32];
- static char __attribute__((aligned(64))) iodc_dbuf[4096];
int ch;
int status;
+ unsigned long flags;
/* Bail if no console input device. */
if (!PAGE0->mem_kbd.iodc_io)
diff --git a/arch/parisc/kernel/pdc_cons.c b/arch/parisc/kernel/pdc_cons.c
index 33b1f84..7f471a4 100644
--- a/arch/parisc/kernel/pdc_cons.c
+++ b/arch/parisc/kernel/pdc_cons.c
@@ -52,10 +52,18 @@
#include <linux/tty.h>
#include <asm/pdc.h> /* for iodc_call() proto and friends */
+static spinlock_t pdc_console_lock = SPIN_LOCK_UNLOCKED;
static void pdc_console_write(struct console *co, const char *s, unsigned count)
{
- pdc_iodc_print(s, count);
+ int i = 0;
+ unsigned long flags;
+
+ spin_lock_irqsave(&pdc_console_lock, flags);
+ do {
+ i += pdc_iodc_print(s + i, count - i);
+ } while (i < count);
+ spin_unlock_irqrestore(&pdc_console_lock, flags);
}
void pdc_printf(const char *fmt, ...)
@@ -73,7 +81,14 @@ void pdc_printf(const char *fmt, ...)
int pdc_console_poll_key(struct console *co)
{
- return pdc_iodc_getc();
+ int c;
+ unsigned long flags;
+
+ spin_lock_irqsave(&pdc_console_lock, flags);
+ c = pdc_iodc_getc();
+ spin_unlock_irqrestore(&pdc_console_lock, flags);
+
+ return c;
}
static int pdc_console_setup(struct console *co, char *options)
diff --git a/include/asm-parisc/pdc.h b/include/asm-parisc/pdc.h
index deda8c3..9eaa794 100644
--- a/include/asm-parisc/pdc.h
+++ b/include/asm-parisc/pdc.h
@@ -645,8 +645,7 @@ int pdc_soft_power_button(int sw_control);
void pdc_io_reset(void);
void pdc_io_reset_devices(void);
int pdc_iodc_getc(void);
-int pdc_iodc_print(unsigned char *str, unsigned count);
-void pdc_printf(const char *fmt, ...);
+int pdc_iodc_print(const unsigned char *str, unsigned count);
void pdc_emergency_unlock(void);
int pdc_sti_call(unsigned long func, unsigned long flags,
--
1.5.3.8
Reply to: