diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-02-19 02:59:54 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-02-19 02:59:54 +0000 |
commit | 969961146b4d554e0991cc4719ccf4a3c63656b8 (patch) | |
tree | 726bbeb5b3ce2e5beb540965cc0b4412f7f3fb7a /app-cdr/qpxtool/files | |
parent | old (diff) | |
download | gentoo-2-969961146b4d554e0991cc4719ccf4a3c63656b8.tar.gz gentoo-2-969961146b4d554e0991cc4719ccf4a3c63656b8.tar.bz2 gentoo-2-969961146b4d554e0991cc4719ccf4a3c63656b8.zip |
Fix from upstream for newer libata versions #210391 by Slava Gorbunov.
(Portage version: 2.2_pre2)
Diffstat (limited to 'app-cdr/qpxtool/files')
-rw-r--r-- | app-cdr/qpxtool/files/qpxtool-0.6.1-libata.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/app-cdr/qpxtool/files/qpxtool-0.6.1-libata.patch b/app-cdr/qpxtool/files/qpxtool-0.6.1-libata.patch new file mode 100644 index 000000000000..145e486308d7 --- /dev/null +++ b/app-cdr/qpxtool/files/qpxtool-0.6.1-libata.patch @@ -0,0 +1,26 @@ +http://bugs.gentoo.org/210392 + +--- lib/qpxtransport/qpx_transport.cpp ++++ lib/qpxtransport/qpx_transport.cpp +@@ -215,6 +215,21 @@ + #define KERNEL_BROKEN 0 + if (use_sg_io) + { ++ /* see linux-2.6.23/block/scsi_ioctl.c:36 */ ++ static const unsigned char scsi_command_size[8] = ++ { ++ 6, 10, 10, 12, ++ 16, 12, 10, 10 ++ }; ++ char cmdsize, opcode; ++ ++ opcode = cgc.cmd[0]; ++ /* see linux-2.6.23/include/scsi/scsi.h:25 */ ++ cmdsize = scsi_command_size[((opcode) >> 5) & 7]; ++ if ((sg_io.cmd_len > 0) && (sg_io.cmd_len < cmdsize)) { ++ sg_io.cmd_len = cmdsize; ++ } ++ + sg_io.dxferp = buf; + sg_io.dxfer_len = sz; + sg_io.dxfer_direction = use_sg_io[dir]; |