On Wed, 18 Oct 2017, Michael Schmitz wrote: > On Mon, Oct 16, 2017 at 12:24 PM, Michael Schmitz <schmitz...@gmail.com> > wrote: > > > > Looks like a bug in ARAnyM. Haven't seen these on actual hardware for > > a long time (i.e. not since your NCR5380 rewrite). And the NCR5380 > > driver wasn't loaded in the emulator tests (and would be pointless to > > have there anyway). > > I've just spotted the 'falconide_release_lock: bug' message in your log. > Now that looks more serious - I'm wondering whether some changes to the > IDE core broke the Falcon ST-DMA locking scheme (i.e. request completion > on hda releases lock when there still is a request in flight on hdb). > Hmmm ... >
Perhaps falconide_intr_lock should behave more like a ref count, so that falconide_release_lock() holds the stdma lock up until falconide_intr_lock reaches zero. The problem remains even when there is only one IDE device. In my aranym config I disabled ide1 and put the CD-ROM at ide0 and got the same oops... ARAnyM 1.0.2 Using config file: '/home/fthain/.aranym/config' TunTap(0): NO_NET_DRIVER_WARN 'tap0': Operation not permitted Could not open joystick 0 ARAnyM RTC Timer: /dev/rtc: No such file or directory Blitter tried to read byte from register ff8a00 at 0071fe [ 0.000000] Linux version 4.12.0-1-m68k (debian-ker...@lists.debian.org) (gcc version 6.4.0 20170805 (Debian 6.4.0-3) ) #1 Debian 4.12.6-1 (2017-08-12) [ 0.000000] Atari hardware found: VIDEL STDMA-SCSI ST_MFP YM2149 PCM CODEC DSP56K SCC ANALOG_JOY BLITTER IDE TT_CLK FDC_SPEED [ 0.000000] On node 0 totalpages: 3584 [ 0.000000] free_area_init_node: node 0, pgdat 0039e480, node_mem_map 00488000 [ 0.000000] DMA zone: 35 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 3584 pages, LIFO batch:0 [ 0.000000] On node 1 totalpages: 131072 [ 0.000000] free_area_init_node: node 1, pgdat 0039ec76, node_mem_map 004b0010 [ 0.000000] DMA zone: 1280 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 131072 pages, LIFO batch:31 [ 0.000000] NatFeats found (ARAnyM, 1.0) [ 0.000000] initrd: 1e9b5400 - 21000000 [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 2 zonelists in Zone order, mobility grouping on. Total pages: 133341 [ 0.000000] Kernel command line: root=/dev/ram video=atafb:vga16 load_ramdisk=1 debian-installer/framebuffer=false BOOT_IMAGE=vmlinux [ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes) [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) [ 0.000000] Sorting __ex_table... [ 0.000000] Memory: 487656K/538624K available (2604K kernel code, 386K rwdata, 908K rodata, 144K init, 209K bss, 50968K reserved, 0K cma-reserved) [ 0.000000] Virtual kernel memory layout: [ 0.000000] vector : 0x0039df78 - 0x0039e378 ( 1 KiB) [ 0.000000] kmap : 0xd0000000 - 0xf0000000 ( 512 MiB) [ 0.000000] vmalloc : 0x21800000 - 0xd0000000 (2792 MiB) [ 0.000000] lowmem : 0x00000000 - 0x21000000 ( 528 MiB) [ 0.000000] .init : 0x003d3000 - 0x003f7000 ( 144 KiB) [ 0.000000] .text : 0x00001000 - 0x0028c160 (2605 KiB) [ 0.000000] .data : 0x0028ed50 - 0x003d25ac (1295 KiB) [ 0.000000] .bss : 0x0039de78 - 0x003d25ac ( 210 KiB) [ 0.000000] NR_IRQS:200 [ 0.000000] Console: colour dummy device 80x25 [ 0.010000] console [tty0] enabled [ 0.010000] Calibrating delay loop... 114.07 BogoMIPS (lpj=570368) [ 0.100000] pid_max: default: 32768 minimum: 301 [ 0.100000] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.100000] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.120000] devtmpfs: initialized [ 0.130000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.130000] futex hash table entries: 256 (order: -1, 3072 bytes) [ 0.130000] NET: Registered protocol family 16 [ 0.170000] SCSI subsystem initialized [ 0.170000] VFS: Disk quotas dquot_6.6.0 [ 0.170000] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 0.220000] NET: Registered protocol family 2 [ 0.220000] TCP established hash table entries: 8192 (order: 3, 32768 bytes) [ 0.230000] TCP bind hash table entries: 8192 (order: 3, 32768 bytes) [ 0.230000] TCP: Hash tables configured (established 8192 bind 8192) [ 0.230000] UDP hash table entries: 512 (order: 1, 8192 bytes) [ 0.230000] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes) [ 0.230000] NET: Registered protocol family 1 [ 0.230000] Unpacking initramfs... [ 2.350000] Freeing initrd memory: 39208K [ 2.360000] nfeth: API 5 [ 2.380000] workingset: timestamp_bits=11 max_order=18 bucket_order=7 [ 2.380000] zbud: loaded [ 2.410000] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) [ 2.410000] io scheduler noop registered [ 2.410000] io scheduler cfq registered (default) [ 2.410000] io scheduler mq-deadline registered [ 2.410000] atafb_init: start [ 2.410000] atafb_init: initializing Falcon hw [ 2.410000] atafb: screen_base 009b1000 phys_screen_base 9b1000 screen_len 311296 [ 2.420000] Determined 640x480, depth 4 [ 2.420000] virtual 640x972 [ 2.430000] Console: switching to colour frame buffer device 80x30 [ 2.430000] fb0: frame buffer device, using 304K of video memory [ 2.440000] pmac_zilog: 0.6 (Benjamin Herrenschmidt <b...@kernel.crashing.org>) [ 2.440000] Non-volatile memory driver v1.3 [ 2.440000] mousedev: PS/2 mouse device common for all mice [ 2.510000] random: fast init done [ 2.710000] input: Atari Keyboard as /devices/virtual/input/input0 [ 2.780000] rtc-generic rtc-generic: rtc core: registered rtc-generic as rtc0 [ 2.790000] ledtrig-cpu: registered to indicate activity on CPUs [ 2.810000] NET: Registered protocol family 17 [ 2.830000] mpls_gso: MPLS GSO support [ 2.860000] registered taskstats version 1 [ 2.880000] zswap: loaded using pool lzo/zbud [ 2.960000] rtc-generic rtc-generic: setting system clock to 2017-10-18 03:18:25 UTC (1508296705) [ 2.990000] Freeing unused kernel memory: 144K [ 3.020000] This architecture does not have kernel memory protection. [ 65.080000] random: crng init done [ 76.460000] Uniform Multi-Platform E-IDE driver [ 76.490000] ide-cd driver 5.00 [ 82.210000] ide: Falcon IDE controller [ 82.210000] Probing IDE interface ide0... [ 83.140000] hda: Optical, ATAPI CD/DVD-ROM drive [ 84.400000] ide0 at 0xfff00000 on irq 15 (serialized) [ 84.410000] ide_cd_do_request: dev hda: flags=22 [ 84.410000] sector 18446744073709551615, nr/cnr 0/0 [ 84.410000] bio 1ba91b00, biotail 1ba91b00, len 24 [ 92.000000] ide-atapi: cmd 0x5a timed out [ 92.000000] hda: lost interrupt [ 156.640000] ide-atapi: cmd 0x5a timed out [ 156.640000] hda: lost interrupt [ 156.640000] ide-cd: hda: ATAPI 4X CD-ROM drive, 512kB Cache [ 156.640000] cdrom: Uniform CD-ROM driver Revision: 3.20 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio (null), biotail (null), len 0 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91b00, biotail 1ba91b00, len 8 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91b00, biotail 1ba91b00, len 4 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91b00, biotail 1ba91b00, len 20 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91b00, biotail 1ba91b00, len 12 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91b00, biotail 1ba91b00, len 2 [ 156.640000] ide_cd_do_request: dev hda: flags=22 [ 156.640000] sector 18446744073709551615, nr/cnr 0/0 [ 156.640000] bio 1ba91380, biotail 1ba91380, len 18 [ 156.650000] falconide_release_lock: bug [ 156.670000] ide_cd_do_request: dev hda: flags=22 [ 156.670000] sector 18446744073709551615, nr/cnr 0/0 [ 156.670000] bio (null), biotail (null), len 0 [ 156.680000] ide_cd_do_request: dev hda: flags=22 [ 156.680000] sector 18446744073709551615, nr/cnr 0/0 [ 156.680000] bio (null), biotail (null), len 0 [ 156.680000] ide_cd_do_request: dev hda: flags=22 [ 156.680000] sector 18446744073709551615, nr/cnr 0/0 [ 156.680000] bio (null), biotail (null), len 0 [ 156.700000] ide_cd_do_request: dev hda: flags=22 [ 156.700000] sector 18446744073709551615, nr/cnr 0/0 [ 156.700000] bio (null), biotail (null), len 0 [ 156.700000] ide_cd_do_request: dev hda: flags=22 [ 156.700000] sector 18446744073709551615, nr/cnr 0/0 [ 156.700000] bio (null), biotail (null), len 0 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio (null), biotail (null), len 0 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio (null), biotail (null), len 0 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio (null), biotail (null), len 0 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio (null), biotail (null), len 0 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio 1ba91c00, biotail 1ba91c00, len 8 [ 198.430000] ide_cd_do_request: dev hda: flags=22 [ 198.430000] sector 18446744073709551615, nr/cnr 0/0 [ 198.430000] bio 1ba91c00, biotail 1ba91c00, len 4 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 20 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 12 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 2 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91380, biotail 1ba91380, len 18 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio (null), biotail (null), len 0 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 32 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91380, biotail 1ba91380, len 18 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91380, biotail 1ba91380, len 16 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 18 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91c00, biotail 1ba91c00, len 24 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio 1ba91380, biotail 1ba91380, len 18 [ 198.440000] ide_cd_do_request: dev hda: flags=22 [ 198.440000] sector 18446744073709551615, nr/cnr 0/0 [ 198.440000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio (null), biotail (null), len 0 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio 1ba91c00, biotail 1ba91c00, len 32 [ 198.450000] ide_cd_do_request: dev hda: flags=22 [ 198.450000] sector 18446744073709551615, nr/cnr 0/0 [ 198.450000] bio 1ba91380, biotail 1ba91380, len 18 [ 198.450000] ide_cd_do_request: dev hda: flags=0 [ 198.450000] sector 64, nr/cnr 4/4 [ 198.450000] bio 1bac6640, biotail 1bac6640, len 2048 [ 198.450000] ide_cd_do_request: dev hda: flags=0 [ 198.450000] sector 68, nr/cnr 4/4 [ 198.450000] bio 1bac6640, biotail 1bac6640, len 2048 [ 198.450000] ISO 9660 Extensions: Microsoft Joliet Level 3 [ 198.520000] Unable to handle kernel NULL pointer dereference at virtual address (null) [ 198.520000] Oops: 00000000 [ 198.520000] Modules linked in: nls_utf8 isofs falconide ide_cd_mod ide_core cdrom [ 198.520000] PC: [<001693f2>] memset+0x66/0x94 [ 198.520000] SR: 2714 SP: 1b899b08 a2: 1bab7320 [ 198.520000] d0: 00000000 d1: 00000010 d2: 00000000 d3: 0000fffc [ 198.520000] d4: 00000000 d5: 1b898000 a0: 00000000 a1: 00000004 [ 198.520000] Process mount (pid: 471, task=1bab7320) [ 198.520000] Frame format=7 eff addr=00000000 ssw=0405 faddr=00000000 [ 198.520000] wb 1 stat/addr/data: 0000 00000000 00000000 [ 198.520000] wb 2 stat/addr/data: 0000 00000000 00000000 [ 198.520000] wb 3 stat/addr/data: 0085 00000000 00000000 [ 198.520000] push data: 00000000 00000000 00000000 00000000 [ 198.520000] Stack from 1b899b70: [ 198.520000] 00000028 00000001 218b007a 00000000 00000000 00000010 00000000 00000004 [ 198.520000] 1b934000 1e714010 0013b9dc 1e714010 1b934000 1b898000 1e714010 1b899c04 [ 198.520000] 1bb42600 00000000 1b9e1c00 1b899c44 0013baae 1e714010 218910d4 21891224 [ 198.520000] 1e714010 1b934000 0013b1dc 00000003 0013a598 00008000 00000075 1e714010 [ 198.520000] 00000000 0013a598 1ba37c90 ffffffff 0013a69a 00000003 0013a598 00008000 [ 198.520000] 00000075 1e714010 00000000 0013a598 1b899c90 1b934001 1b934000 1e714010 [ 198.520000] Call Trace: [<218b007a>] ide_cdrom_prep_fn+0x6a/0x138 [ide_cd_mod] [ 198.520000] [<0013b9dc>] blk_peek_request+0xc2/0x188 [ 198.520000] [<0013baae>] blk_fetch_request+0xc/0x28 [ 198.520000] [<218910d4>] do_ide_request+0x6c/0x5a4 [ide_core] [ 198.520000] [<21891224>] do_ide_request+0x1bc/0x5a4 [ide_core] [ 198.520000] [<0013b1dc>] blk_account_io_start+0x0/0x13a [ 198.520000] [<0013a598>] blk_queue_enter+0x0/0x102 [ 198.520000] [<00008000>] auto_irq_enable+0xc/0x2a [ 198.520000] [<0013a598>] blk_queue_enter+0x0/0x102 [ 198.520000] [<0013a69a>] blk_queue_exit+0x0/0x34 [ 198.520000] [<0013a598>] blk_queue_enter+0x0/0x102 [ 198.520000] [<00008000>] auto_irq_enable+0xc/0x2a [ 198.520000] [<0013a598>] blk_queue_enter+0x0/0x102 [ 198.520000] [<0013810a>] __elv_add_request+0x192/0x1f4 [ 198.520000] [<0013b1dc>] blk_account_io_start+0x0/0x13a [ 198.520000] [<0013882e>] __blk_run_queue+0x24/0x2e [ 198.520000] [<0013c080>] blk_queue_bio+0x2d6/0x2de [ 198.520000] [<0013a69a>] blk_queue_exit+0x0/0x34 [ 198.520000] [<0013a598>] blk_queue_enter+0x0/0x102 [ 198.520000] [<00136bae>] bio_endio+0x0/0x94 [ 198.520000] [<0013a78a>] generic_make_request+0xbc/0x192 [ 198.520000] [<0013a936>] submit_bio+0xd6/0x10a [ 198.520000] [<00008000>] auto_irq_enable+0xc/0x2a [ 198.520000] [<000e27f2>] submit_bh_wbc+0x15e/0x168 [ 198.520000] [<000e2cba>] __bread_gfp+0x0/0xa0 [ 198.520000] [<000e2cb4>] submit_bh+0x12/0x18 [ 198.520000] [<000e2d30>] __bread_gfp+0x76/0xa0 [ 198.520000] [<003d7a40>] config_amiga+0x1be/0x5d8 [ 198.520000] [<218d4792>] __isofs_iget+0x8c/0x652 [isofs] [ 198.520000] [<218d4706>] __isofs_iget+0x0/0x652 [isofs] [ 198.520000] [<00008000>] auto_irq_enable+0xc/0x2a [ 198.520000] [<003d7a40>] config_amiga+0x1be/0x5d8 [ 198.520000] [<00008000>] auto_irq_enable+0xc/0x2a [ 198.520000] [<003d7a40>] config_amiga+0x1be/0x5d8 [ 198.520000] [<218d5590>] isofs_fill_super+0x838/0xb26 [isofs] [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00030000>] __find_resource+0x4c/0x162 [ 198.520000] [<0000c600>] mvme147_sched_init+0x34/0x60 [ 198.520000] [<00008608>] atari_reset+0x58/0xba [ 198.520000] [<00010003>] res_func+0x823/0x141a [ 198.520000] [<00168cc8>] vsnprintf+0x21c/0x35e [ 198.520000] [<000affff>] __zswap_param_set+0x115/0x2a4 [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<000e5dc8>] sb_set_blocksize+0x18/0x42 [ 198.520000] [<00289476>] mutex_unlock+0x0/0x2a [ 198.520000] [<000bfde4>] mount_bdev+0x128/0x150 [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<218d4548>] isofs_mount+0x1a/0x22 [isofs] [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<218d4d58>] isofs_fill_super+0x0/0xb26 [isofs] [ 198.520000] [<000c077a>] mount_fs+0x1c/0xaa [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<000d3f36>] vfs_kern_mount+0x44/0xcc [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<000d61a6>] do_mount+0x4be/0x864 [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<000b2d14>] kfree+0x0/0x78 [ 198.520000] [<00096182>] strndup_user+0x2a/0x4a [ 198.520000] [<000d6754>] SyS_mount+0x7e/0x8a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00002934>] syscall+0x8/0xc [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<00008001>] auto_irq_enable+0xd/0x2a [ 198.520000] [<0018c00e>] cfb_copyarea+0xc2/0x6c0 [ 198.520000] Code: 4443 4efb 3212 22c0 22c0 22c0 22c0 22c0 <22c0> 22c0 22c0 51ca ffee 4242 5382 6ae6 0801 0001 6704 3280 5489 0801 0000 6702 [ 198.520000] Disabling lock debugging due to kernel taint > I'll try to reproduce that on my Falcon with a second IDE drive > attached. > Are you using Adrian's ISO? -- > Cheers, > > Michael > >