bugzilla: 134558 -- work around large reads not getting valid data with

newer kernels.
This commit is contained in:
Peter Jones 2004-10-06 20:36:05 +00:00
parent bf30c3b1a1
commit feeaf70053
2 changed files with 32 additions and 2 deletions

View File

@ -0,0 +1,25 @@
--- cdparanoia-III-alpha9.8/interface/scsi_interface.c.smalldma 2004-10-06 16:15:50.778406009 -0400
+++ cdparanoia-III-alpha9.8/interface/scsi_interface.c 2004-10-06 16:17:51.438686857 -0400
@@ -169,8 +169,6 @@
cur=table*reserved;
- ((struct sg_info *)d->sg)->dxferp_max_buffer_len = cur;
-
/* so since we never go above q->max_sectors, we should never get -EIO.
* we might still get -ENOMEM, but we back off for that later. Monty
* had an old comment: "not too much; new kernels have trouble with DMA
@@ -182,8 +180,12 @@
* still fail the wrong way. This needs some kernel-land investigation.
*/
#if 1
- cur=(cur>1024*32?1024*32:cur);
+ if (!getenv("CDDA_IGNORE_BUFSIZE_LIMIT")) {
+ cur=(cur>2352*24?2352*24:cur);
+ }
#endif
+ ((struct sg_info *)d->sg)->dxferp_max_buffer_len = cur;
+
d->nsectors=cur/CD_FRAMESIZE_RAW;
d->bigbuff=cur;

View File

@ -3,7 +3,7 @@
Name: cdparanoia Name: cdparanoia
Version: %{realver} Version: %{realver}
Release: 23 Release: 24
License: GPL License: GPL
Group: Applications/Multimedia Group: Applications/Multimedia
Source: http://www.xiph.org/paranoia/download/%{name}-III-%{realver}.src.tgz Source: http://www.xiph.org/paranoia/download/%{name}-III-%{realver}.src.tgz
@ -16,6 +16,7 @@ Patch5: cdparanoia-III-alpha9.8.verbose.patch
Patch6: cdparanoia-III-alpha9.8.louder.patch Patch6: cdparanoia-III-alpha9.8.louder.patch
Patch7: cdparanoia-III-alpha9.8.verbosity3.patch Patch7: cdparanoia-III-alpha9.8.verbosity3.patch
Patch8: cdparanoia-III-alpha9.8.env.patch Patch8: cdparanoia-III-alpha9.8.env.patch
Patch9: cdparanoia-III-alpha9.8.smalldma.patch
Url: http://www.xiph.org/paranoia/index.html Url: http://www.xiph.org/paranoia/index.html
BuildRoot: %{_tmppath}/cdparanoia-%{version}-root BuildRoot: %{_tmppath}/cdparanoia-%{version}-root
Requires: cdparanoia-libs = %{version}-%{release} Requires: cdparanoia-libs = %{version}-%{release}
@ -60,10 +61,11 @@ applications which read CD Digital Audio disks.
%patch6 -p1 -b .louder %patch6 -p1 -b .louder
%patch7 -p1 -b .verbosity3 %patch7 -p1 -b .verbosity3
%patch8 -p1 -b .env %patch8 -p1 -b .env
%patch9 -p1 -b .smalldma
%build %build
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
export OPT="${CFLAGS:-%optflags}" export OPT="${CFLAGS:-%optflags} -O0"
%configure --includedir=%{_includedir}/cdda %configure --includedir=%{_includedir}/cdda
make OPT="$OPT" make OPT="$OPT"
@ -119,6 +121,9 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/*.a %{_libdir}/*.a
%changelog %changelog
* Wed Oct 6 2004 Peter Jones <pjones@redhat.com> alpha9.8-24
- workaround for sgio read size issues in newer kernels.
* Fri Oct 1 2004 Peter Jones <pjones@redhat.com> alpha9.8-23 * Fri Oct 1 2004 Peter Jones <pjones@redhat.com> alpha9.8-23
- "This time, with a meaningful changelog" release. Just like -22. - "This time, with a meaningful changelog" release. Just like -22.
- new SG_IO code in rawhide. This means ripping will no longer use the - new SG_IO code in rawhide. This means ripping will no longer use the