<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>204985</bug_id>
          
          <creation_ts>2008-01-09 02:19 0000</creation_ts>
          <short_desc>VIDEO_CARDS=&quot;nv&quot; x11-base/x11-drm-20071019 needs __ucmpdi2 which isnt in the kernel</short_desc>
          <delta_ts>2008-09-13 01:28:37 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Ebuilds</component>
          <version>unspecified</version>
          <rep_platform>PPC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          <bug_file_loc>https://bugs.freedesktop.org/show_bug.cgi?id=10547</bug_file_loc>
          
          
          <priority>P2</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>hiyuh.root@gmail.com</reporter>
          <assigned_to>toolchain@gentoo.org</assigned_to>
          <cc>x11-drivers@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>hiyuh.root@gmail.com</who>
            <bug_when>2008-01-09 02:19:33 0000</bug_when>
            <thetext>x11-base/x11-drm-20071019 w/ VIDEO_CARDS=&quot;nv&quot; on ~ppc
(w/ sys-devel.gcc-4.2.2) produces unknown symbol __ucmpdi2.
It comes from wrong code generation by sys-devel/gcc-4.2.2
for 64bit comparison in nouveau.ko. Note, I didn&apos;t investigate
whether it&apos;s gentoo-patched one specific or not.

Reproducible: Always

Steps to Reproduce:
1. VIDEO_CARDS=&quot;nv&quot; emerge x11-base/x11-drm-20071019 on ~ppc.
2.
3.

Actual Results:  
nouveau.ko produces unknown symbol __ucmpdi2.

Expected Results:  
*.ko shouldn&apos;t have any unknown symbol.

A workaround I did is to use patched gentoo-sources.
I&apos;ll attach it later.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>hiyuh.root@gmail.com</who>
            <bug_when>2008-01-09 02:20:19 0000</bug_when>
            <thetext>Created an attachment (id=140516)
patch for __ucmpdi2 workaround

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2008-01-09 17:58:06 0000</bug_when>
            <thetext>this isnt a bug in gcc ... dont do 64bit math in the kernel</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2008-01-09 19:19:56 0000</bug_when>
            <thetext>ugh, no ... the last thing you want to do is actually add these symbols to the kernel.  they arent in there by design: you dont want to do 64bit emulated math in kernel space.

looks like the issue comes up as gcc does not optimize all cases ... so while the x11-drm package is still broken (imo), by adding better optimization to the compiler, you should be able build x11-drm without these sym references ...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>hiyuh.root@gmail.com</who>
            <bug_when>2008-02-06 16:16:35 0000</bug_when>
            <thetext>FYI, same bug was already filed at upstream bugzilla.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>battousai@gentoo.org</who>
            <bug_when>2008-09-13 01:28:37 0000</bug_when>
            <thetext>This has been fixed in kernel 2.6.25 upstream, according to the fdo bug.

In patchball 0.2 for x11-drm 20071019, I added the patch (with a kernel version check so as to not collide with the function in newer kernels) for kernels without the fix.

This is hopefully good now for users affected. I don&apos;t have a PPC so I can&apos;t check to make sure if the code works as it should. Any problems, just reopen here.

Thanks.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140516</attachid>
            <date>2008-01-09 02:20 0000</date>
            <desc>patch for __ucmpdi2 workaround</desc>
            <filename>__ucmpdi2_workaround.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">IE9uIFRodSwgMjAwNi0xMi0xNCBhdCAxNDo1OCAtMDUwMCwgS3lsZSBNY01hcnRpbiB3cm90ZToK
IHwgSSBwb3N0ZWQgYSBwYXRjaCB0byBQYXVsIHRoaXMgd2VlayB0byBmaXggdGhpcywgCgogSG0s
IEkgZGlkbid0IHNlZSBpdCBvbiBsaW51eHBwYy1kZXYuCiAKIHwgU2luY2UgcHBjMzIgY2FuJ3Qg
ZG8gYSA2NGJpdCBjb21wYXJpc29uIG9uIGl0cyBvd24gaXQgc2VlbXMsIGdjYwogfCB3aWxsIGdl
bmVyYXRlIGEgY2FsbCB0byBhIGhlbHBlciBmdW5jdGlvbiBmcm9tIGxpYmdjYy4gV2hhdCBvdGhl
cgogfCBhcmNoZXMgZG8gaXMgbGluayBsaWJnY2MuYSBpbnRvIGxpYnMteSwgYW5kIGV4cG9ydCB0
aGUgc3ltYm9sCiB8IHRoZXkgd2FudCBmcm9tIGl0LgogCiBZb3Ugc3RpbGwgZ2V0IHRvICdhY2Np
ZGVudGFsbHknIGRvIDY0LWJpdCBhcml0aG1ldGljIGluLWtlcm5lbCB0aGF0IHdheQogdGhvdWdo
LiBNaWdodCBiZSBiZXR0ZXIganVzdCB0byBwcm92aWRlIF9fdWNtcGRpMiwganVzdCBhcyB3ZSBo
YXZlIGZvcgogdGhlIG90aGVyIGZ1bmN0aW9ucyB3aGljaCBhcmUgcmVxdWlyZWQgZnJvbSBsaWJn
Y2MgCiAKIEl0J2QgYmUgYmV0dGVyIGp1c3QgdG8gZml4IHRoZSBjb21waWxlciB0aG91Z2ggLS0g
d2hpY2ggaXMgaW4gZmFjdCB3aGF0CiB0aGV5J3ZlIGRvbmU6IGh0dHA6Ly9nY2MuZ251Lm9yZy9i
dWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MjU3MjQKICAgICAgICAgICAgICAgaHR0cDovL2djYy5n
bnUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0yMTIzNwogCiBJJ3ZlIGFwcGxpZWQgdGhp
cyBhcyBhIHRlbXBvcmFyeSBoYWNrIHRvIHRoZSBGZWRvcmEga2VybmVsIHVudGlsIHRoZQogY29t
cGlsZXIgaXMgdXBkYXRlZCB0aGVyZS4uLgogCi0tLSBsaW51eC0yLjYuMTkucHBjL2FyY2gvcG93
ZXJwYy9rZXJuZWwvbWlzY18zMi5TfgkyMDA2LTExLTI5IDIxOjU3OjM3LjAwMDAwMDAwMCArMDAw
MAorKysgbGludXgtMi42LjE5LnBwYy9hcmNoL3Bvd2VycGMva2VybmVsL21pc2NfMzIuUwkyMDA2
LTEyLTE3IDEyOjE5OjQ4LjAwMDAwMDAwMCArMDAwMApAQCAtNzI4LDYgKzcyOCwyNyBAQCBfR0xP
QkFMKF9fbHNocmRpMykKIAlvcglyNCxyNCxyNwkjIExTVyB8PSB0MgogCWJscgogCisvKgorICog
X191Y21wZGkyOiA2NC1iaXQgY29tcGFyaXNvbgorICoKKyAqIFIzL1I0IGhhcyA2NCBiaXQgdmFs
dWUgQQorICogUjUvUjYgaGFzIDY0IGJpdCB2YWx1ZSBCCisgKiByZXN1bHQgaW4gUjM6IDAgZm9y
IEEgPCBCCisgKgkJIDEgZm9yIEEgPT0gQgorICoJCSAyIGZvciBBID4gQgorICovCitfR0xPQkFM
KF9fdWNtcGRpMikKKwljbXBsdwlyNyxyMyxyNQkjIGNvbXBhcmUgaGlnaCB3b3JkcworCWxpCXIz
LDAKKwlibHQJcjcsMmYJCSMgYSA8IGIgLi4uIHJldHVybiAwCisJYmd0CXI3LDFmCQkjIGEgPiBi
IC4uLiByZXR1cm4gMgorCWNtcGx3CXI2LHI0LHI2CSMgY29tcGFyZSBsb3cgd29yZHMKKwlibHQJ
cjYsMmYJCSMgYSA8IGIgLi4uIHJldHVybiAwCisJbGkJcjMsMQorCWJsZQlyNiwyZgkJIyBhID0g
YiAuLi4gcmV0dXJuIDEKKzE6CWxpCXIzLDIKKzI6CWJscgorCiBfR0xPQkFMKGFicykKIAlzcmF3
aQlyNCxyMywzMQogCXhvcglyMyxyMyxyNAotLS0gbGludXgtMi42LjE5LnBwYy9hcmNoL3Bvd2Vy
cGMva2VybmVsL3BwY19rc3ltcy5jfgkyMDA2LTEyLTE1IDE3OjE5OjU2LjAwMDAwMDAwMCArMDAw
MAorKysgbGludXgtMi42LjE5LnBwYy9hcmNoL3Bvd2VycGMva2VybmVsL3BwY19rc3ltcy5jCTIw
MDYtMTItMTcgMTI6MTY6NTQuMDAwMDAwMDAwICswMDAwCkBAIC0xNjEsOSArMTYxLDExIEBAIEVY
UE9SVF9TWU1CT0wodG9fdG0pOwogbG9uZyBsb25nIF9fYXNocmRpMyhsb25nIGxvbmcsIGludCk7
CiBsb25nIGxvbmcgX19hc2hsZGkzKGxvbmcgbG9uZywgaW50KTsKIGxvbmcgbG9uZyBfX2xzaHJk
aTMobG9uZyBsb25nLCBpbnQpOworaW50IF9fdWNtcGRpMih1aW50NjRfdCwgdWludDY0X3QpOwog
RVhQT1JUX1NZTUJPTChfX2FzaHJkaTMpOwogRVhQT1JUX1NZTUJPTChfX2FzaGxkaTMpOwogRVhQ
T1JUX1NZTUJPTChfX2xzaHJkaTMpOworRVhQT1JUX1NZTUJPTChfX3VjbXBkaTIpOwogI2VuZGlm
CiAKIEVYUE9SVF9TWU1CT0wobWVtY3B5KTsKIAogLS0gCiBkd213MgogCiAtCiBUbyB1bnN1YnNj
cmliZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgta2Vy
bmVsIiBpbgogdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5v
cmcKIE1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5vcmcvbWFqb3Jk
b21vLWluZm8uaHRtbAogUGxlYXNlIHJlYWQgdGhlIEZBUSBhdCAgaHR0cDovL3d3dy50dXgub3Jn
L2xrbWwvCg==
</data>        

          </attachment>
    </bug>

</bugzilla>