From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753552AbcBOOiT (ORCPT ); Mon, 15 Feb 2016 09:38:19 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:29564 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753452AbcBOOgp (ORCPT ); Mon, 15 Feb 2016 09:36:45 -0500 X-AuditID: cbfec7f4-f79026d00000418a-e3-56c1e27a4f3f From: Andrzej Hajda To: linux-kernel@vger.kernel.org Cc: Andrzej Hajda , Bartlomiej Zolnierkiewicz , Marek Szyprowski , Arnd Bergmann , Greg Kroah-Hartman Subject: [PATCH 3/7] drivers: char: mem: fix IS_ERROR_VALUE usage Date: Mon, 15 Feb 2016 15:35:21 +0100 Message-id: <1455546925-22119-4-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1455546925-22119-1-git-send-email-a.hajda@samsung.com> References: <1455546925-22119-1-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupiluLIzCtJLcpLzFFi42I5/e/4Vd2qRwfDDP4t5re4te4cq8XfScfY LTbOWM9q0bx4PZvF5V1z2CzWHrnL7sDm8fvXJEaP/XPXsHv0bVnF6PF5k1wASxSXTUpqTmZZ apG+XQJXxqkj69gKlrNXTHr4g72BsYWti5GTQ0LARGLH8kdMELaYxIV764HiXBxCAksZJVY9 v8wM4TQxSbxsbQLrYBPQlPi7+SaYLSKgILG59xkrSBGzwANGicY5x8BGCQs4Suxdf4wdxGYR UJU41/MZzOYVcJbYe+IYK8Q6OYmTxyYD2RwcnAIuEgv2FoCEhYBK9u/exjSBkXcBI8MqRtHU 0uSC4qT0XEO94sTc4tK8dL3k/NxNjJAQ+rKDcfExq0OMAhyMSjy8EWcOhAmxJpYVV+YeYpTg YFYS4bU4fTBMiDclsbIqtSg/vqg0J7X4EKM0B4uSOO/cXe9DhATSE0tSs1NTC1KLYLJMHJxS DYxLQmTyJ8/1ldxiF74ypEur6V34NK8lbSxcj6eX+p9ZfWGCjFb8Aie2ilJmGab7FiEztp4/ WJ323+bAFfXJ0ZNFFEQ2LReM9DzwqXT5Y7V7a53Tsu9cqFU0EWeauJTffkqJTYSHS5tO7Znb 1yd5Wn+tnJ8hNcnhwh7T5mtPH4suvFbUGmCTIa/EUpyRaKjFXFScCAB4c2iRHQIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org IS_ERR_VALUE macro should be used only with unsigned long type. Specifically it works incorrectly with longer types. The patch follows conclusion from discussion on LKML [1][2]. [1]: http://permalink.gmane.org/gmane.linux.kernel/2120927 [2]: http://permalink.gmane.org/gmane.linux.kernel/2150581 Signed-off-by: Andrzej Hajda --- drivers/char/mem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/char/mem.c b/drivers/char/mem.c index 4f6f94c..71025c2 100644 --- a/drivers/char/mem.c +++ b/drivers/char/mem.c @@ -695,7 +695,7 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig) offset += file->f_pos; case SEEK_SET: /* to avoid userland mistaking f_pos=-9 as -EBADF=-9 */ - if (IS_ERR_VALUE((unsigned long long)offset)) { + if ((unsigned long long)offset >= -MAX_ERRNO) { ret = -EOVERFLOW; break; } -- 1.9.1