Date: Thu, 03 Nov 2011 21:08:38 +0100 From: Alex Samorukov <ml@os2.kiev.ua> To: Thomas Eberhardt <sneakywumpus@googlemail.com> Cc: FreeBSD Stable Mailing List <freebsd-stable@freebsd.org> Subject: Re: smartctl / mpt on 9.0-RC1 Message-ID: <4EB2F4C6.30508@os2.kiev.ua> In-Reply-To: <5AA1B2B7-EC88-44E0-9537-A91E2AFDFFFE@googlemail.com> References: <4EB1BCAD.7080206@zzattack.org> <20111102233807.GA67112@icarus.home.lan> <4EB1D6F9.3060008@zzattack.org> <20111103000124.GA67550@icarus.home.lan> <4EB1DD51.4080808@zzattack.org> <20111103002352.GA67904@icarus.home.lan> <4EB2538D.3090108@zzattack.org> <4EB2CB75.6070003@os2.kiev.ua> <CAD4099km0FcvUMSw=sY7HB73dtvfQgcVE16VJdGpGK96V%2B4hhA@mail.gmail.com> <4EB2E2D7.2050809@os2.kiev.ua> <5AA1B2B7-EC88-44E0-9537-A91E2AFDFFFE@googlemail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Thank you, it is really caused by MFC r225950 and smartctl way to detect sense length. I decided not to add ifdefs, but change the logic. I fixed this in SVN [1], patch in the unified diff format could be downladed at [2]. Please test this, and if it works fine - i will submit PR to the port. [1] https://sourceforge.net/apps/trac/smartmontools/changeset?old_path=%2Ftrunk%2Fsmartmontools%2Fos_freebsd.cpp&old=3468&new_path=%2Ftrunk%2Fsmartmontools%2Fos_freebsd.cpp&new=3467 [2] https://sourceforge.net/apps/trac/smartmontools/changeset?format=diff&new=3467&old=3468&new_path=trunk%2Fsmartmontools%2Fos_freebsd.cpp&old_path=trunk%2Fsmartmontools%2Fos_freebsd.cpp :On 11/03/2011 08:05 PM, Thomas Eberhardt wrote: > Hi. I got the same problem. After some debugging I came up with the > following patch: > > --- os_freebsd.cpp.orig 2011-10-06 18:43:44.000000000 +0200 > +++ os_freebsd.cpp 2011-10-23 11:19:31.492599837 +0200 > @@ -1044,8 +1044,13 @@ > } > > if (iop->sensep) { > +#if CAM_VERSION< 0x16 > memcpy(iop->sensep,&(ccb->csio.sense_data),sizeof(struct scsi_sense_data)); > iop->resp_sense_len = sizeof(struct scsi_sense_data); > +#else > + memcpy(iop->sensep,&(ccb->csio.sense_data),sizeof(struct scsi_sense_data_fixed)); > + iop->resp_sense_len = sizeof(struct scsi_sense_data_fixed); > +#endif > } > > iop->scsi_status = ccb->csio.scsi_status; > > > > On 03.11.2011, at 19:52, Alex Samorukov wrote: > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EB2F4C6.30508>