Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: vmlocking2 branch merged
On Sat, Jan 05, 2008 at 02:42:28AM +0000, Andrew Doran wrote:
> On Thu, Jan 03, 2008 at 10:39:19PM +0100, Juergen Hannken-Illjes wrote:
>
> > On Wed, Jan 02, 2008 at 02:55:06PM +0000, Andrew Doran wrote:
> > > Hi,
> > >
> > > The vmlocking2 branch was merged into -current earlier today.
> >
> > From this merge I get:
> >
> > syncing disks... 3 done
> > unmounting file systems... done
> > ahc1: board is not responding
> > cmd fail
> > ahc1:SCB 0x8 - timed out
> > >>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<
> > ahc1: Dumping Card State in Data-out phase, at SEQADDR 0x0
> > Card was paused
> >
> > Stack trace is
> >
> > ahc_timeout(c11cb1f8,c117901c,91,9e,5) at netbsd:ahc_timeout+0x3ff
> > ahc_execute_scb(caf09180,c108cc1c,a,cbae99f0,c0af49a0) at
> > netbsd:ahc_execute_scb+0x897
> > ahc_action(c1179078,0,c108cb88,1,7) at netbsd:ahc_action+0x517
> > scsipi_run_queue(c108cb88,cbae9ae2,a,c066088e,c0a773a4) at
> > netbsd:scsipi_run_queue+0x155
> > scsipi_execute_xs(c108cb88,cbae9ae2,a,0,0) at
> > netbsd:scsipi_execute_xs+0x164
> > sd_flush(c11d6e00,c0a58500,cbae9b1c,c04807f6,cbae9c30) at
> > netbsd:sd_flush+0x85
> > sd_suspend(c11d6e00,c11d6e00,cbae9b3c,c04592ba,c11d6e00) at
> > netbsd:sd_suspend+0x32
> > device_pmf_driver_suspend(c11d6e00,c11d6e1c,cbae9b3c,c0466bfa,0) at
> > netbsd:device_pmf_driver_suspend+0x28
> > pmf_system_shutdown(7,0,0,c0a5cc48,cba220a0) at
> > netbsd:pmf_system_shutdown+0xba
> > cpu_reboot(0,0,0,0,0) at netbsd:cpu_reboot+0x1b
> >
> > Hardware in question:
> >
> > ahc1 at pci0 dev 15 function 0: Adaptec 29160N Ultra160 SCSI adapter
> > ahc1: interrupting at irq 11
> > ahc1: aic7892: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
> > scsibus0 at ahc1: 16 targets, 8 luns per target
> > scsibus0: waiting 2 seconds for devices to settle...
> > sd0 at scsibus0 target 0 lun 0: <IBM, DPSS-309170N, S96H> disk fixed
> > sd0: 8748 MB, 14627 cyl, 3 head, 408 sec, 512 bytes/sect x 17916240
> > sectors
> > sd0: sync (12.50ns offset 63), 16-bit (160.000MB/s) transfers, tagged
> > queueing
> > sd1 at scsibus0 target 1 lun 0: <IBM, DDYS-T18350N, S96H> disk fixed
> > sd1: 17501 MB, 15110 cyl, 6 head, 395 sec, 512 bytes/sect x 35843670
> > sectors
> > sd1: sync (12.50ns offset 63), 16-bit (160.000MB/s) transfers, tagged
> > queueing
> >
> > I tried a kernel from 2008/1/2 11:30 UTC (works) and from 12:00 UTC (fails).
> > Config is:
>
> I haven't changed anything in this path. Incidentally, requiring polling
> operation during shutdown is insane, the system is still alive if quiet.
>
> Andrew
Somewhere you did ...
>From reboot I get the call chain
sys_reboot -> cpu_reboot -> vfs_shutdown -> vfs_unmountall ->
dounmount -> ffs_unmount -> VOP_CLOSE -> spec_close
trying to close the root spec device. Here in spec_close() we get
"vcount == 2" and therefore bdev_close() doesn't get called and the
root disk misses one close and pmf_system_shutdown() needs to flush the
cache.
So with vmlocking2 there is a dangling reference to the root device's vnode.
Now we only need to know, where it is ...
--
Juergen Hannken-Illjes - hannken%eis.cs.tu-bs.de@localhost - TU Braunschweig
(Germany)
Home |
Main Index |
Thread Index |
Old Index