From owner-freebsd-sparc64@FreeBSD.ORG Fri Dec 2 14:05:45 2011 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 00974106568B; Fri, 2 Dec 2011 14:05:45 +0000 (UTC) (envelope-from c.jayachandran@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 3EA0F8FC18; Fri, 2 Dec 2011 14:05:44 +0000 (UTC) Received: by faak28 with SMTP id k28so2909566faa.13 for ; Fri, 02 Dec 2011 06:05:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type; bh=PysOqB/e4zHYSRyNSMThYRjPBTyB9Jw+KWHgy/YX1JY=; b=jvgk4MUzF8KyKasorBQTN/9SOXwehxBd6BEc7LQYcx7peQIZAKBhsv/+wguv2fKQuP Zz5tIHbBI62w5DjAzUC+P540vSFYso+O9Wwr8iv/Osd2EVssCuk2Mu0VNEzBRJXkAhKj UH2bJx2VBlaJbQXJqGOb1UiwvjoQS55ll/EBE= MIME-Version: 1.0 Received: by 10.180.96.166 with SMTP id dt6mr9759843wib.47.1322832945131; Fri, 02 Dec 2011 05:35:45 -0800 (PST) Sender: c.jayachandran@gmail.com Received: by 10.216.20.67 with HTTP; Fri, 2 Dec 2011 05:35:45 -0800 (PST) Date: Fri, 2 Dec 2011 19:05:45 +0530 X-Google-Sender-Auth: bqsKpIfnvIAbWHvgD_8mbil46Vg Message-ID: From: "Jayachandran C." To: freebsd-sparc64@freebsd.org Content-Type: multipart/mixed; boundary=f46d04427272caaff004b31c0b65 Cc: marius@freebsd.org Subject: [PATCH] fix OF_finddevice return value checks on sparc64 X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Dec 2011 14:05:45 -0000 --f46d04427272caaff004b31c0b65 Content-Type: text/plain; charset=ISO-8859-1 While going thru the OF_finddevice usage in kernel (to fix up the FDT interface) I noticed that a few calls made to OF_finddevice in sparc64 does not check the return value correctly. The error return is -1 not 0, and since the value is unsigned, checking it for '< 0' does not work either. The attached patch fixes this. Regards, JC. --f46d04427272caaff004b31c0b65 Content-Type: text/x-patch; charset=US-ASCII; name="sparc64-of-finddev-fixes.patch" Content-Disposition: attachment; filename="sparc64-of-finddev-fixes.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gvp8ltsr0 SW5kZXg6IHN5cy9zcGFyYzY0L3NwYXJjNjQvdm1fbWFjaGRlcC5jCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5 cy9zcGFyYzY0L3NwYXJjNjQvdm1fbWFjaGRlcC5jCShyZXZpc2lvbiAyMjgxOTcpCisrKyBzeXMv c3BhcmM2NC9zcGFyYzY0L3ZtX21hY2hkZXAuYwkod29ya2luZyBjb3B5KQpAQCAtMzY4LDcgKzM2 OCw3IEBACiAJCShjZWxsX3QpYnNwZWMKIAl9OwogCi0JaWYgKChjaG9zZW4gPSBPRl9maW5kZGV2 aWNlKCIvY2hvc2VuIikpICE9IDApIHsKKwlpZiAoKGNob3NlbiA9IE9GX2ZpbmRkZXZpY2UoIi9j aG9zZW4iKSkgIT0gLTEpIHsKIAkJaWYgKE9GX2dldHByb3AoY2hvc2VuLCAiYm9vdHBhdGgiLCBi c3BlYywgc2l6ZW9mKGJzcGVjKSkgPT0gLTEpCiAJCQlic3BlY1swXSA9ICdcMCc7CiAJCWJzcGVj W3NpemVvZihic3BlYykgLSAxXSA9ICdcMCc7CkluZGV4OiBzeXMvc3BhcmM2NC9zcGFyYzY0L29m d19tYWNoZGVwLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lzL3NwYXJjNjQvc3BhcmM2NC9vZndfbWFjaGRl cC5jCShyZXZpc2lvbiAyMjgxOTcpCisrKyBzeXMvc3BhcmM2NC9zcGFyYzY0L29md19tYWNoZGVw LmMJKHdvcmtpbmcgY29weSkKQEAgLTUyLDcgKzUyLDcgQEAKIAlwaGFuZGxlX3Qgbm9kZTsKIAlz dHJ1Y3QgaWRwcm9tIGlkcDsKIAotCWlmICgobm9kZSA9IE9GX2ZpbmRkZXZpY2UoIi9vcHRpb25z IikpID4gMCAmJgorCWlmICgobm9kZSA9IE9GX2ZpbmRkZXZpY2UoIi9vcHRpb25zIikpICE9IC0x ICYmCiAJICAgIE9GX2dldHByb3Aobm9kZSwgImxvY2FsLW1hYy1hZGRyZXNzPyIsIGJ1Ziwgc2l6 ZW9mKGJ1ZikpID4gMCkgewogCQlidWZbc2l6ZW9mKGJ1ZikgLSAxXSA9ICdcMCc7CiAJCWlmIChz dHJjbXAoYnVmLCAidHJ1ZSIpID09IDAgJiYK --f46d04427272caaff004b31c0b65--