From mboxrd@z Thu Jan 1 00:00:00 1970 From: nevermore@mail.ru To: gcc-gnats@gcc.gnu.org Subject: optimization/4718: Internal compiler error in file drivers/net/8139too.c while compiling linux kernel 2.4.13 Date: Sun, 28 Oct 2001 07:46:00 -0000 Message-id: <20011028154008.11430.qmail@sourceware.cygnus.com> X-SW-Source: 2001-10/msg00608.html List-Id: >Number: 4718 >Category: optimization >Synopsis: Internal compiler error in file drivers/net/8139too.c while compiling linux kernel 2.4.13 >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Sun Oct 28 07:46:00 PST 2001 >Closed-Date: >Last-Modified: >Originator: Leonid Romanov >Release: 3.0.2 >Organization: >Environment: >Description: This bug was already reported, but I don't know how to post a comment to existing bug. See PR no: 4689, 4673, 4647, 4635. I've reduced original file to the minimum where no includes are needed and other functions are removed. >How-To-Repeat: gcc -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -c -o 8139too.o 8139too.c >Fix: A workaround for the problem is to remove -O2 from the compiler options for this file. >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/msword; name="8139too.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="8139too.c" dHlwZWRlZiB1bnNpZ25lZCBjaGFyIHU4Owp0eXBlZGVmIHVuc2lnbmVkIGludCB1MzI7CgoKdHlw ZWRlZiBzdHJ1Y3QgewogIHVuc2lnbmVkIGxvbmcgc2VnOwp9IG1tX3NlZ21lbnRfdDsKCnN0cnVj dCB0YXNrX3N0cnVjdAp7CiAgbW1fc2VnbWVudF90IGFkZHJfbGltaXQ7Cn07CgpzdGF0aWMgaW5s aW5lIHN0cnVjdCB0YXNrX3N0cnVjdCAqIGdldF9jdXJyZW50KHZvaWQpCnsKCXN0cnVjdCB0YXNr X3N0cnVjdCAqY3VycmVudDsKCV9fYXNtX18oImFuZGwgJSVlc3AsJTA7ICI6Ij1yIiAoY3VycmVu dCkgOiAiMCIgKH44MTkxVUwpKTsKCXJldHVybiBjdXJyZW50OwogfQogCiNkZWZpbmUgY3VycmVu dCBnZXRfY3VycmVudCgpCgojZGVmaW5lIGNvcHlfdG9fdXNlcih0byxmcm9tLG4pCQkJCVwKCShf X2J1aWx0aW5fY29uc3RhbnRfcChuKSA/CQkJXAoJIF9fY29uc3RhbnRfY29weV90b191c2VyKCh0 byksKGZyb20pLChuKSkgOglcCgkgX19nZW5lcmljX2NvcHlfdG9fdXNlcigodG8pLChmcm9tKSwo bikpKQoKI2RlZmluZSBjb3B5X2Zyb21fdXNlcih0byxmcm9tLG4pCQkJXAoJKF9fYnVpbHRpbl9j b25zdGFudF9wKG4pID8JCQlcCgkgX19jb25zdGFudF9jb3B5X2Zyb21fdXNlcigodG8pLChmcm9t KSwobikpIDoJXAoJIF9fZ2VuZXJpY19jb3B5X2Zyb21fdXNlcigodG8pLChmcm9tKSwobikpKQoK Ci8qIE9wdGltaXplIGp1c3QgYSBsaXR0bGUgYml0IHdoZW4gd2Uga25vdyB0aGUgc2l6ZSBvZiB0 aGUgbW92ZS4gKi8KI2RlZmluZSBfX2NvbnN0YW50X2NvcHlfdXNlcih0bywgZnJvbSwgc2l6ZSkJ CQlcCmRvIHsJCQkJCQkJCVwKCWludCBfX2QwLCBfX2QxOwkJCQkJCVwKCXN3aXRjaCAoc2l6ZSAm IDMpIHsJCQkJCVwKCWRlZmF1bHQ6CQkJCQkJXAoJCV9fYXNtX18gX192b2xhdGlsZV9fKAkJCQlc CgkJCSIwOglyZXA7IG1vdnNsXG4iCQkJXAoJCQkiMTpcbiIJCQkJCVwKCQkJIi5zZWN0aW9uIC5m aXh1cCxcImF4XCJcbiIJCVwKCQkJIjI6CXNobCAkMiwlMFxuIgkJCVwKCQkJIglqbXAgMWJcbiIJ CQlcCgkJCSIucHJldmlvdXNcbiIJCQkJXAoJCQkiLnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxu IgkJXAoJCQkiCS5hbGlnbiA0XG4iCQkJXAoJCQkiCS5sb25nIDBiLDJiXG4iCQkJXAoJCQkiLnBy ZXZpb3VzIgkJCQlcCgkJCTogIj1jIihzaXplKSwgIj0mUyIgKF9fZDApLCAiPSZEIiAoX19kMSlc CgkJCTogIjEiKGZyb20pLCAiMiIodG8pLCAiMCIoc2l6ZS80KQlcCgkJCTogIm1lbW9yeSIpOwkJ CQlcCgkJYnJlYWs7CQkJCQkJXAoJY2FzZSAxOgkJCQkJCQlcCgkJX19hc21fXyBfX3ZvbGF0aWxl X18oCQkJCVwKCQkJIjA6CXJlcDsgbW92c2xcbiIJCQlcCgkJCSIxOgltb3ZzYlxuIgkJCVwKCQkJ IjI6XG4iCQkJCQlcCgkJCSIuc2VjdGlvbiAuZml4dXAsXCJheFwiXG4iCQlcCgkJCSIzOglzaGwg JDIsJTBcbiIJCQlcCgkJCSI0OglpbmNsICUwXG4iCQkJXAoJCQkiCWptcCAyYlxuIgkJCVwKCQkJ Ii5wcmV2aW91c1xuIgkJCQlcCgkJCSIuc2VjdGlvbiBfX2V4X3RhYmxlLFwiYVwiXG4iCQlcCgkJ CSIJLmFsaWduIDRcbiIJCQlcCgkJCSIJLmxvbmcgMGIsM2JcbiIJCQlcCgkJCSIJLmxvbmcgMWIs NGJcbiIJCQlcCgkJCSIucHJldmlvdXMiCQkJCVwKCQkJOiAiPWMiKHNpemUpLCAiPSZTIiAoX19k MCksICI9JkQiIChfX2QxKVwKCQkJOiAiMSIoZnJvbSksICIyIih0byksICIwIihzaXplLzQpCVwK CQkJOiAibWVtb3J5Iik7CQkJCVwKCQlicmVhazsJCQkJCQlcCgljYXNlIDI6CQkJCQkJCVwKCQlf X2FzbV9fIF9fdm9sYXRpbGVfXygJCQkJXAoJCQkiMDoJcmVwOyBtb3ZzbFxuIgkJCVwKCQkJIjE6 CW1vdnN3XG4iCQkJXAoJCQkiMjpcbiIJCQkJCVwKCQkJIi5zZWN0aW9uIC5maXh1cCxcImF4XCJc biIJCVwKCQkJIjM6CXNobCAkMiwlMFxuIgkJCVwKCQkJIjQ6CWFkZGwgJDIsJTBcbiIJCQlcCgkJ CSIJam1wIDJiXG4iCQkJXAoJCQkiLnByZXZpb3VzXG4iCQkJCVwKCQkJIi5zZWN0aW9uIF9fZXhf dGFibGUsXCJhXCJcbiIJCVwKCQkJIgkuYWxpZ24gNFxuIgkJCVwKCQkJIgkubG9uZyAwYiwzYlxu IgkJCVwKCQkJIgkubG9uZyAxYiw0YlxuIgkJCVwKCQkJIi5wcmV2aW91cyIJCQkJXAoJCQk6ICI9 YyIoc2l6ZSksICI9JlMiIChfX2QwKSwgIj0mRCIgKF9fZDEpXAoJCQk6ICIxIihmcm9tKSwgIjIi KHRvKSwgIjAiKHNpemUvNCkJXAoJCQk6ICJtZW1vcnkiKTsJCQkJXAoJCWJyZWFrOwkJCQkJCVwK CWNhc2UgMzoJCQkJCQkJXAoJCV9fYXNtX18gX192b2xhdGlsZV9fKAkJCQlcCgkJCSIwOglyZXA7 IG1vdnNsXG4iCQkJXAoJCQkiMToJbW92c3dcbiIJCQlcCgkJCSIyOgltb3ZzYlxuIgkJCVwKCQkJ IjM6XG4iCQkJCQlcCgkJCSIuc2VjdGlvbiAuZml4dXAsXCJheFwiXG4iCQlcCgkJCSI0OglzaGwg JDIsJTBcbiIJCQlcCgkJCSI1OglhZGRsICQyLCUwXG4iCQkJXAoJCQkiNjoJaW5jbCAlMFxuIgkJ CVwKCQkJIglqbXAgM2JcbiIJCQlcCgkJCSIucHJldmlvdXNcbiIJCQkJXAoJCQkiLnNlY3Rpb24g X19leF90YWJsZSxcImFcIlxuIgkJXAoJCQkiCS5hbGlnbiA0XG4iCQkJXAoJCQkiCS5sb25nIDBi LDRiXG4iCQkJXAoJCQkiCS5sb25nIDFiLDViXG4iCQkJXAoJCQkiCS5sb25nIDJiLDZiXG4iCQkJ XAoJCQkiLnByZXZpb3VzIgkJCQlcCgkJCTogIj1jIihzaXplKSwgIj0mUyIgKF9fZDApLCAiPSZE IiAoX19kMSlcCgkJCTogIjEiKGZyb20pLCAiMiIodG8pLCAiMCIoc2l6ZS80KQlcCgkJCTogIm1l bW9yeSIpOwkJCQlcCgkJYnJlYWs7CQkJCQkJXAoJfQkJCQkJCQlcCn0gd2hpbGUgKDApCgovKiBP cHRpbWl6ZSBqdXN0IGEgbGl0dGxlIGJpdCB3aGVuIHdlIGtub3cgdGhlIHNpemUgb2YgdGhlIG1v dmUuICovCiNkZWZpbmUgX19jb25zdGFudF9jb3B5X3VzZXJfemVyb2luZyh0bywgZnJvbSwgc2l6 ZSkJCVwKZG8gewkJCQkJCQkJXAoJaW50IF9fZDAsIF9fZDE7CQkJCQkJXAoJc3dpdGNoIChzaXpl ICYgMykgewkJCQkJXAoJZGVmYXVsdDoJCQkJCQlcCgkJX19hc21fXyBfX3ZvbGF0aWxlX18oCQkJ CVwKCQkJIjA6CXJlcDsgbW92c2xcbiIJCQlcCgkJCSIxOlxuIgkJCQkJXAoJCQkiLnNlY3Rpb24g LmZpeHVwLFwiYXhcIlxuIgkJXAoJCQkiMjoJcHVzaGwgJTBcbiIJCQlcCgkJCSIJcHVzaGwgJSVl YXhcbiIJCQlcCgkJCSIJeG9ybCAlJWVheCwlJWVheFxuIgkJXAoJCQkiCXJlcDsgc3Rvc2xcbiIJ CQlcCgkJCSIJcG9wbCAlJWVheFxuIgkJCVwKCQkJIglwb3BsICUwXG4iCQkJXAoJCQkiCXNobCAk MiwlMFxuIgkJCVwKCQkJIglqbXAgMWJcbiIJCQlcCgkJCSIucHJldmlvdXNcbiIJCQkJXAoJCQki LnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxuIgkJXAoJCQkiCS5hbGlnbiA0XG4iCQkJXAoJCQki CS5sb25nIDBiLDJiXG4iCQkJXAoJCQkiLnByZXZpb3VzIgkJCQlcCgkJCTogIj1jIihzaXplKSwg Ij0mUyIgKF9fZDApLCAiPSZEIiAoX19kMSlcCgkJCTogIjEiKGZyb20pLCAiMiIodG8pLCAiMCIo c2l6ZS80KQlcCgkJCTogIm1lbW9yeSIpOwkJCQlcCgkJYnJlYWs7CQkJCQkJXAoJY2FzZSAxOgkJ CQkJCQlcCgkJX19hc21fXyBfX3ZvbGF0aWxlX18oCQkJCVwKCQkJIjA6CXJlcDsgbW92c2xcbiIJ CQlcCgkJCSIxOgltb3ZzYlxuIgkJCVwKCQkJIjI6XG4iCQkJCQlcCgkJCSIuc2VjdGlvbiAuZml4 dXAsXCJheFwiXG4iCQlcCgkJCSIzOglwdXNobCAlMFxuIgkJCVwKCQkJIglwdXNobCAlJWVheFxu IgkJCVwKCQkJIgl4b3JsICUlZWF4LCUlZWF4XG4iCQlcCgkJCSIJcmVwOyBzdG9zbFxuIgkJCVwK CQkJIglzdG9zYlxuIgkJCVwKCQkJIglwb3BsICUlZWF4XG4iCQkJXAoJCQkiCXBvcGwgJTBcbiIJ CQlcCgkJCSIJc2hsICQyLCUwXG4iCQkJXAoJCQkiCWluY2wgJTBcbiIJCQlcCgkJCSIJam1wIDJi XG4iCQkJXAoJCQkiNDoJcHVzaGwgJSVlYXhcbiIJCQlcCgkJCSIJeG9ybCAlJWVheCwlJWVheFxu IgkJXAoJCQkiCXN0b3NiXG4iCQkJXAoJCQkiCXBvcGwgJSVlYXhcbiIJCQlcCgkJCSIJaW5jbCAl MFxuIgkJCVwKCQkJIglqbXAgMmJcbiIJCQlcCgkJCSIucHJldmlvdXNcbiIJCQkJXAoJCQkiLnNl Y3Rpb24gX19leF90YWJsZSxcImFcIlxuIgkJXAoJCQkiCS5hbGlnbiA0XG4iCQkJXAoJCQkiCS5s b25nIDBiLDNiXG4iCQkJXAoJCQkiCS5sb25nIDFiLDRiXG4iCQkJXAoJCQkiLnByZXZpb3VzIgkJ CQlcCgkJCTogIj1jIihzaXplKSwgIj0mUyIgKF9fZDApLCAiPSZEIiAoX19kMSlcCgkJCTogIjEi KGZyb20pLCAiMiIodG8pLCAiMCIoc2l6ZS80KQlcCgkJCTogIm1lbW9yeSIpOwkJCQlcCgkJYnJl YWs7CQkJCQkJXAoJY2FzZSAyOgkJCQkJCQlcCgkJX19hc21fXyBfX3ZvbGF0aWxlX18oCQkJCVwK CQkJIjA6CXJlcDsgbW92c2xcbiIJCQlcCgkJCSIxOgltb3Zzd1xuIgkJCVwKCQkJIjI6XG4iCQkJ CQlcCgkJCSIuc2VjdGlvbiAuZml4dXAsXCJheFwiXG4iCQlcCgkJCSIzOglwdXNobCAlMFxuIgkJ CVwKCQkJIglwdXNobCAlJWVheFxuIgkJCVwKCQkJIgl4b3JsICUlZWF4LCUlZWF4XG4iCQlcCgkJ CSIJcmVwOyBzdG9zbFxuIgkJCVwKCQkJIglzdG9zd1xuIgkJCVwKCQkJIglwb3BsICUlZWF4XG4i CQkJXAoJCQkiCXBvcGwgJTBcbiIJCQlcCgkJCSIJc2hsICQyLCUwXG4iCQkJXAoJCQkiCWFkZGwg JDIsJTBcbiIJCQlcCgkJCSIJam1wIDJiXG4iCQkJXAoJCQkiNDoJcHVzaGwgJSVlYXhcbiIJCQlc CgkJCSIJeG9ybCAlJWVheCwlJWVheFxuIgkJXAoJCQkiCXN0b3N3XG4iCQkJXAoJCQkiCXBvcGwg JSVlYXhcbiIJCQlcCgkJCSIJYWRkbCAkMiwlMFxuIgkJCVwKCQkJIglqbXAgMmJcbiIJCQlcCgkJ CSIucHJldmlvdXNcbiIJCQkJXAoJCQkiLnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxuIgkJXAoJ CQkiCS5hbGlnbiA0XG4iCQkJXAoJCQkiCS5sb25nIDBiLDNiXG4iCQkJXAoJCQkiCS5sb25nIDFi LDRiXG4iCQkJXAoJCQkiLnByZXZpb3VzIgkJCQlcCgkJCTogIj1jIihzaXplKSwgIj0mUyIgKF9f ZDApLCAiPSZEIiAoX19kMSlcCgkJCTogIjEiKGZyb20pLCAiMiIodG8pLCAiMCIoc2l6ZS80KQlc CgkJCTogIm1lbW9yeSIpOwkJCQlcCgkJYnJlYWs7CQkJCQkJXAoJY2FzZSAzOgkJCQkJCQlcCgkJ X19hc21fXyBfX3ZvbGF0aWxlX18oCQkJCVwKCQkJIjA6CXJlcDsgbW92c2xcbiIJCQlcCgkJCSIx Ogltb3Zzd1xuIgkJCVwKCQkJIjI6CW1vdnNiXG4iCQkJXAoJCQkiMzpcbiIJCQkJCVwKCQkJIi5z ZWN0aW9uIC5maXh1cCxcImF4XCJcbiIJCVwKCQkJIjQ6CXB1c2hsICUwXG4iCQkJXAoJCQkiCXB1 c2hsICUlZWF4XG4iCQkJXAoJCQkiCXhvcmwgJSVlYXgsJSVlYXhcbiIJCVwKCQkJIglyZXA7IHN0 b3NsXG4iCQkJXAoJCQkiCXN0b3N3XG4iCQkJXAoJCQkiCXN0b3NiXG4iCQkJXAoJCQkiCXBvcGwg JSVlYXhcbiIJCQlcCgkJCSIJcG9wbCAlMFxuIgkJCVwKCQkJIglzaGwgJDIsJTBcbiIJCQlcCgkJ CSIJYWRkbCAkMywlMFxuIgkJCVwKCQkJIglqbXAgMmJcbiIJCQlcCgkJCSI1OglwdXNobCAlJWVh eFxuIgkJCVwKCQkJIgl4b3JsICUlZWF4LCUlZWF4XG4iCQlcCgkJCSIJc3Rvc3dcbiIJCQlcCgkJ CSIJc3Rvc2JcbiIJCQlcCgkJCSIJcG9wbCAlJWVheFxuIgkJCVwKCQkJIglhZGRsICQzLCUwXG4i CQkJXAoJCQkiCWptcCAyYlxuIgkJCVwKCQkJIjY6CXB1c2hsICUlZWF4XG4iCQkJXAoJCQkiCXhv cmwgJSVlYXgsJSVlYXhcbiIJCVwKCQkJIglzdG9zYlxuIgkJCVwKCQkJIglwb3BsICUlZWF4XG4i CQkJXAoJCQkiCWluY2wgJTBcbiIJCQlcCgkJCSIJam1wIDNiXG4iCQkJXAoJCQkiLnByZXZpb3Vz XG4iCQkJCVwKCQkJIi5zZWN0aW9uIF9fZXhfdGFibGUsXCJhXCJcbiIJCVwKCQkJIgkuYWxpZ24g NFxuIgkJCVwKCQkJIgkubG9uZyAwYiw0YlxuIgkJCVwKCQkJIgkubG9uZyAxYiw1YlxuIgkJCVwK CQkJIgkubG9uZyAyYiw2YlxuIgkJCVwKCQkJIi5wcmV2aW91cyIJCQkJXAoJCQk6ICI9YyIoc2l6 ZSksICI9JlMiIChfX2QwKSwgIj0mRCIgKF9fZDEpXAoJCQk6ICIxIihmcm9tKSwgIjIiKHRvKSwg IjAiKHNpemUvNCkJXAoJCQk6ICJtZW1vcnkiKTsJCQkJXAoJCWJyZWFrOwkJCQkJCVwKCX0JCQkJ CQkJXAp9IHdoaWxlICgwKQoKI2RlZmluZSBfX3JhbmdlX29rKGFkZHIsc2l6ZSkgKHsgXAoJdW5z aWduZWQgbG9uZyBmbGFnLHN1bTsgXAoJYXNtKCJhZGRsICUzLCUxIDsgc2JibCAlMCwlMDsgY21w bCAlMSwlNDsgc2JibCAkMCwlMCIgXAoJCToiPSZyIiAoZmxhZyksICI9ciIgKHN1bSkgXAoJCToi MSIgKGFkZHIpLCJnIiAoKGludCkoc2l6ZSkpLCJnIiAoY3VycmVudC0+YWRkcl9saW1pdC5zZWcp KTsgXAoJZmxhZzsgfSkKCiNkZWZpbmUgYWNjZXNzX29rKHR5cGUsYWRkcixzaXplKSAoX19yYW5n ZV9vayhhZGRyLHNpemUpID09IDApCgoKCnN0YXRpYyBpbmxpbmUgdW5zaWduZWQgbG9uZwpfX2Nv bnN0YW50X2NvcHlfdG9fdXNlcih2b2lkICp0bywgY29uc3Qgdm9pZCAqZnJvbSwgdW5zaWduZWQg bG9uZyBuKQp7CglpZiAoYWNjZXNzX29rKFZFUklGWV9XUklURSwgdG8sIG4pKQoJCV9fY29uc3Rh bnRfY29weV91c2VyKHRvLGZyb20sbik7CglyZXR1cm4gbjsKfQoKc3RhdGljIGlubGluZSB1bnNp Z25lZCBsb25nCl9fY29uc3RhbnRfY29weV9mcm9tX3VzZXIodm9pZCAqdG8sIGNvbnN0IHZvaWQg KmZyb20sIHVuc2lnbmVkIGxvbmcgbikKewoJaWYgKGFjY2Vzc19vayhWRVJJRllfUkVBRCwgZnJv bSwgbikpCgkJX19jb25zdGFudF9jb3B5X3VzZXJfemVyb2luZyh0byxmcm9tLG4pOwoJZWxzZQoJ CW1lbXNldCh0bywgMCwgbik7CglyZXR1cm4gbjsKfQoKdW5zaWduZWQgbG9uZyBfX2dlbmVyaWNf Y29weV90b191c2VyKHZvaWQgKiwgY29uc3Qgdm9pZCAqLCB1bnNpZ25lZCBsb25nKTsKdW5zaWdu ZWQgbG9uZyBfX2dlbmVyaWNfY29weV9mcm9tX3VzZXIodm9pZCAqLCBjb25zdCB2b2lkICosIHVu c2lnbmVkIGxvbmcpOwoKc3RydWN0IGV0aHRvb2xfd29saW5mbyB7CiAgdTMyIGNtZDsKICB1MzIg c3VwcG9ydGVkOwogIHUzMiB3b2xvcHRzOwogIHU4IHNvcGFzc1s2XTsKfTsKCgp2b2lkIGR1bW15 X2Z1bmMoc3RydWN0IGV0aHRvb2xfd29saW5mbyopOwoKc3RhdGljIGludCBuZXRkZXZfZXRodG9v bF9pb2N0bCAodm9pZCAqdXNlcmFkZHIpCnsKCXUzMiBldGhjbWQ7CgoJLyogZGV2X2lvY3RsKCkg aW4gLi4vLi4vbmV0L2NvcmUvZGV2LmMgaGFzIGFscmVhZHkgY2hlY2tlZAoJICAgY2FwYWJsZShD QVBfTkVUX0FETUlOKSwgc28gZG9uJ3QgYm90aGVyIHdpdGggdGhhdCBoZXJlLiAgKi8KCglpZiAo Y29weV9mcm9tX3VzZXIgKCZldGhjbWQsIHVzZXJhZGRyLCBzaXplb2YgKGV0aGNtZCkpKQoJCXJl dHVybiAwOwoKCXN3aXRjaCAoZXRoY21kKSB7CiAgCgoJLyogVE9ETzogRVRIVE9PTF9TU0VUICov CgoJY2FzZSAweDAwMDAwMDA1OgogIAkJewoJCQlzdHJ1Y3QgZXRodG9vbF93b2xpbmZvIHdvbCA9 IHsgMHgwMDAwMDAwNSB9OwoJCQlkdW1teV9mdW5jICgmd29sKTsKCQkJaWYgKGNvcHlfdG9fdXNl ciAodXNlcmFkZHIsICZ3b2wsIHNpemVvZiAod29sKSkpCgkJCQlyZXR1cm4gMDsKCQl9CgljYXNl IDB4MDAwMDAwMDY6CgkJewoJCQlzdHJ1Y3QgZXRodG9vbF93b2xpbmZvIHdvbDsKCQkJaWYgKGNv cHlfZnJvbV91c2VyICgmd29sLCB1c2VyYWRkciwgc2l6ZW9mICh3b2wpKSkKCQkJCXJldHVybiAw OwoJCX0KCX0KCglyZXR1cm4gMDsKfQoK