Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753037AbbL2JcB (ORCPT ); Tue, 29 Dec 2015 04:32:01 -0500 Received: from mail-by2on0073.outbound.protection.outlook.com ([207.46.100.73]:59296 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751089AbbL2Jb5 (ORCPT ); Tue, 29 Dec 2015 04:31:57 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Yuri.Norov@caviumnetworks.com; From: Yury Norov To: , , CC: , , Yury Norov Subject: [PATCH 2/2] 32-bit ABI: introduce ARCH_32BIT_OFF_T config option Date: Tue, 29 Dec 2015 12:26:35 +0300 Message-ID: <1451381195-9315-3-git-send-email-ynorov@caviumnetworks.com> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1451381195-9315-1-git-send-email-ynorov@caviumnetworks.com> References: <1451381195-9315-1-git-send-email-ynorov@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [95.143.213.121] X-ClientProxiedBy: VI1PR05CA0030.eurprd05.prod.outlook.com (25.162.33.168) To BY2PR07MB616.namprd07.prod.outlook.com (10.141.222.156) X-Microsoft-Exchange-Diagnostics: 1;BY2PR07MB616;2:fn4w3M2qTWa/76fl/wZDPgcV+hAwFtnL9jQmBd3L4H17ZgEQHAASNcGr7i9e+WlL3fTUC+AZd51zZ9Agc8E70Ltn64iz/rT6dN9RQyqs0yXPjnJj0PyOS1UKXU8dKu3RpxmAwIl/P55BgMjpFa0eUg==;3:MGcCAKTa2CBbn6mnnLFggETJ+DagHH1WCAeR7XJsd8XzimxENkkG5ZClL0nCqeQnbl+39/SUytIjUyDE5M25TAM0wxV5AP32ism2BvvSgwwNeesKUJ1hOQts7VTvzqzY;25:b1FlnTeugRz2/y60dPqoALI5/u8hDOlmQ8A6FXNACRtccVMxjsJBWl1BPxZfzi7DrIqqNMra3k5SP1Z6NtG8ft6IRCx5mlBirePzZI7q3gP8jhGTIj5lyAyzXwIAxdYnQV+qqLW027o1k25quNsGMyreq49UxgEjF3BMVM6y9oSU51wdzhJpBMAQELm1MxHuDYt33N4CHwF3wZQsoCWdd8bDY17hB21zGsApgavoYpBcaubnF3cWiGhEWMIUQknscX6ZN1asdS8NhlJH6AOAjA== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR07MB616; X-Microsoft-Exchange-Diagnostics: 1;BY2PR07MB616;20:Q/58nis+wQ0TeF5BNrjfGEViXaK6HftDnWPpgrwF78eUeApeaVwFUSqMH9s0wYjR30QdEq3hHw9cpfQD176m2lHUDWvb3tq+0F0UVwCjGCgQZCtl2pPA8ncFQQavhpeHOlqXAvyP6RjHuc4E9wLudj3Y3n6tG+z061ZMG/JbNfOQAQWX98RGz40poUq+EHCavjGAKsBJTx5ztKzJw3QjAKiMLZZF5qqo7k5ZvWDWqxJIwumPjvJ6A+toqHdaCVY+Kd1D7Q0kZcmmjzjOU/IeZEAlwUQS8nbscy/zFpVD7eJrOeTU5iEFtqbuK1G814YOu0BUFdrUDpxu/PPOMj9nn/Y6gstZ/l3CQFk00p91w/HcfbQctMXIGoub9uVqKRDH6G0VtQiueknLPjfKx0tm/X/b9OGvnzF+UspEa7rbw68Y+LsnrMFO4Oud/zCU7HVfJxmHh1pGbIHOnsHWfe79S2pNQobqzx3TO2D5Br+fIH2apXiL43eBgip9BFI4lnhxhXXpNXkKAP3cRkT8ffNUcILxcfll1Dcd7lQ8NE2Kv8tDW45lETI869QkJbJNO/tGTEVfspF75A3Jz4ITooGgsjimV52EiE13lfo7CiW3IEA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236414709691187); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(520078)(3002001)(10201501046);SRVR:BY2PR07MB616;BCL:0;PCL:0;RULEID:;SRVR:BY2PR07MB616; X-Microsoft-Exchange-Diagnostics: 1;BY2PR07MB616;4:ZW8JaQtKKZK6SPulr02juQBh4IU4UvUuME/HW9EzVjxMJtmsluOdzD7WW4O1rsTU7DqoNvtwqPeaJaMAK182b7duTZmjxkDbagDQeNZ+zXewlyL9fTOSUIZSQbPxnItcI33nK7UvdnaWsW3k0Hs9h7lVXHD0TCR1UviTz2CN29kASOl9HmYGZ5nw2B7+AJPnGqj2p7scnrl+NmzzQ823zyy4H+QWg69EuSW8T2Ucbz8n4UDzUeuUXlU1Akonk068cHETKiNZur3MoA7VoLTIOQz50ctifvjGY4hcMtL0I9mrZSUMZcnVRNAgXRuAhYFQL4X2zHW5tMlcKXizvczL1EbQ3fy/ShjIw4XRyP0L65s/RbXfQKgn81HxtGI2fAJqVZldJAHkKLHR1cViEVyxZRn37BuS9Fn21FzjMCXo2iJ9CgRBmNVWwU6zRF8KsHhc X-Forefront-PRVS: 0805EC9467 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6069001)(6009001)(189002)(199003)(48376002)(92566002)(5001770100001)(5008740100001)(19580405001)(42186005)(76506005)(2201001)(19580395003)(81156007)(189998001)(97736004)(1096002)(5001960100002)(50466002)(107886002)(586003)(76176999)(575784001)(122386002)(50986999)(106356001)(6116002)(3846002)(40100003)(33646002)(101416001)(5003940100001)(47776003)(87976001)(66066001)(4001430100002)(36756003)(5004730100002)(229853001)(50226001)(2950100001)(105586002)(77096005);DIR:OUT;SFP:1101;SCL:1;SRVR:BY2PR07MB616;H:localhost;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY2PR07MB616;23:O89p0+lVAj1BUl5fAN/JIOOIr/qC6SgUvrWGlR0IUg?= =?us-ascii?Q?xDYwTQoUJ+UQsTEJcUZ8HU1BkSsg9u59nw8cn/x8qGaq47MPgr2m+FelSKMg?= =?us-ascii?Q?zE7z8ShXqfKpyCetKHdZN2pi8p2Vx8M2ktQpubvjoq4tQ+B+SJIcF2d8bevs?= =?us-ascii?Q?AKgHcNUdMIu4oVJfCnQwv4eKdLdXVUCyzIPvoIQLqPGqSgkOc9t+PQSm3y7B?= =?us-ascii?Q?xh6eOQjGE5p7dz6gJSebukLCi1QGyWa/I1P3vPSxguipBZv94qZSeKpuZ7sJ?= =?us-ascii?Q?tKkbI3W1BEq0kfsoL1anvrSGWqu+UBUDhCXwjZ1uIX7W0T6N83VVew9+NQk2?= =?us-ascii?Q?lj9EPzff4N+HpxPzDAAADZ5R1Q+8ra6fwpbwt6Ihy6bHvWCfa6AiHWLejiq3?= =?us-ascii?Q?f44sbeGHW0Lyapwkr0CdC33PFAGUgv92cOmRcT7TDKM6T+LzbGZqIAW8pQCy?= =?us-ascii?Q?IMxrqjThX+RIZQuG3DL648HnjVEv/DKjz/tEgbtvsIQ06i0cAhiA0O1iF4dH?= =?us-ascii?Q?AGIIABhS0D7ozCrjo5ODnjxikwNgZ3NgRMG51TGw3h9VDaNkhV2WAN9xg4h+?= =?us-ascii?Q?wG4yhkYOjXJrzZuAMn9T6VJ6dbobgd5gVVJUQHNY577eyliK6GZbApnr3UOy?= =?us-ascii?Q?BJD88QyhZ9OTc4TYHVKTzpnWmr+sNWtUyT6WSHyxGAZ2vYecGS+lyS51KwIY?= =?us-ascii?Q?Pxq/8V73y1pVC8SWKM68sDAP5mYiWouvCSX/v4b48uZKXKf717eYYFbdxBJ+?= =?us-ascii?Q?JskJp0wI1HSzrUn13zQgnluG6rN8zCLdbxYt9vF+tcSo6DaKITTVyUw3Iem9?= =?us-ascii?Q?5uJW8ylVWoJ6Gw9y6kjDd36JSMDSU3phClcd9UjaCGmQ/eeK+Udrkfo1ELHE?= =?us-ascii?Q?c3ar7huuAglcq1rLAbO4y0dqM4d/eJGkZXgTl+TGgp9mt/bc740wB6c7wiBS?= =?us-ascii?Q?bk39oDgH6ijQej2E0kHUVBc/s/T18o2Q2oMmgwyztRfKoI7+X75tbiYNDKmX?= =?us-ascii?Q?k9GZCPxAC4FNT/tVA9c3W6i8467Cjyq3Lk9VYl1GjPNR+Q4h+VXH25J57KJ6?= =?us-ascii?Q?SPqQfYVaipNRr05q8z64GvjTPgOnHgxcQvcoEuOUSaJxm8i6z+RBiuinCmOu?= =?us-ascii?Q?NmZ5Gm7JKc9/Rp2V5kKi2SzkgQNY9X?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR07MB616;5:J1DCTJLCPsAul/xFum687MdEdYL2kjjIIDORCUhPXqrEuJHWEg50mCskOj1ALC3QkUCUbQLf7GZYERTOF7Uuf+fAvtCNi+/6YnLFA2GRSn9SGbQXXVWsMFD/H+vf70BkYcEZC5S2hn2dxA1cQX2h9g==;24:OHXVrUx151qVMGrPXfvvIaXwu2pZ5TFkUL/ve+ynq0fo1BCWvTcSENtH/UjKyNa8kO3vMq3UCuP4dXZPI/VoplhtgKN1cKyw9PjVz78Q+KY= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Dec 2015 09:31:54.6203 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR07MB616 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 10398 Lines: 375 All new 32-bit architectures should have 64-bit off_t type, but existing architectures has 32-bit ones. To handle it, new config option is added to arch/Kconfig that defaults ARCH_32BIT_OFF_T to be disabled for non-64 bit architectures. All existing 32-bit architectures enable it explicitly here. New option affects force_o_largefile() behaviour. Namely, if off_t is 64-bits long, we have no reason to reject user to open big files. Note that even if architectures has only 64-bit off_t in the kernel (arc, c6x, h8300, hexagon, metag, nios2, openrisc, tile32 and unicore32), a libc may use 32-bit off_t, and therefore want to limit the file size to 4GB unless specified differently in the open flags. Signed-off-by: Yury Norov --- arch/Kconfig | 4 ++++ arch/arc/Kconfig | 1 + arch/arm/Kconfig | 1 + arch/blackfin/Kconfig | 1 + arch/cris/Kconfig | 1 + arch/frv/Kconfig | 1 + arch/h8300/Kconfig | 1 + arch/hexagon/Kconfig | 1 + arch/m32r/Kconfig | 1 + arch/m68k/Kconfig | 1 + arch/metag/Kconfig | 1 + arch/microblaze/Kconfig | 1 + arch/mips/Kconfig | 1 + arch/mn10300/Kconfig | 1 + arch/nios2/Kconfig | 1 + arch/openrisc/Kconfig | 1 + arch/parisc/Kconfig | 1 + arch/powerpc/Kconfig | 1 + arch/score/Kconfig | 1 + arch/sh/Kconfig | 1 + arch/sparc/Kconfig | 1 + arch/tile/Kconfig | 1 + arch/unicore32/Kconfig | 1 + arch/x86/Kconfig | 1 + arch/x86/um/Kconfig | 1 + arch/xtensa/Kconfig | 1 + include/linux/fcntl.h | 2 +- 27 files changed, 30 insertions(+), 1 deletion(-) diff --git a/arch/Kconfig b/arch/Kconfig index 4e949e5..b356bb6 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -233,6 +233,10 @@ config ARCH_THREAD_INFO_ALLOCATOR config ARCH_WANTS_DYNAMIC_TASK_STRUCT bool +config ARCH_32BIT_OFF_T + bool + depends on !64BIT + config HAVE_REGS_AND_STACK_ACCESS_API bool help diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig index 6312f60..570dc39 100644 --- a/arch/arc/Kconfig +++ b/arch/arc/Kconfig @@ -9,6 +9,7 @@ config ARC def_bool y select ARCH_SUPPORTS_ATOMIC_RMW if ARC_HAS_LLSC + select ARCH_32BIT_OFF_T select BUILDTIME_EXTABLE_SORT select COMMON_CLK select CLONE_BACKWARDS diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 34e1569..dafdebe 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1,6 +1,7 @@ config ARM bool default y + select ARCH_32BIT_OFF_T select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE select ARCH_HAS_ELF_RANDOMIZE select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig index af76634..9b5fc06 100644 --- a/arch/blackfin/Kconfig +++ b/arch/blackfin/Kconfig @@ -12,6 +12,7 @@ config RWSEM_XCHGADD_ALGORITHM config BLACKFIN def_bool y + select ARCH_32BIT_OFF_T select HAVE_ARCH_KGDB select HAVE_ARCH_TRACEHOOK select HAVE_DYNAMIC_FTRACE diff --git a/arch/cris/Kconfig b/arch/cris/Kconfig index e086f9e..5bc9203 100644 --- a/arch/cris/Kconfig +++ b/arch/cris/Kconfig @@ -50,6 +50,7 @@ config LOCKDEP_SUPPORT config CRIS bool default y + select ARCH_32BIT_OFF_T select HAVE_IDE select GENERIC_ATOMIC64 select HAVE_UID16 diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig index 34aa193..09b82fc 100644 --- a/arch/frv/Kconfig +++ b/arch/frv/Kconfig @@ -1,6 +1,7 @@ config FRV bool default y + select ARCH_32BIT_OFF_T select HAVE_IDE select HAVE_ARCH_TRACEHOOK select HAVE_PERF_EVENTS diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig index dd3ac75..7761f4a 100644 --- a/arch/h8300/Kconfig +++ b/arch/h8300/Kconfig @@ -1,5 +1,6 @@ config H8300 def_bool y + select ARCH_32BIT_OFF_T select GENERIC_ATOMIC64 select HAVE_UID16 select VIRT_TO_BUS diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig index 4dc89d1..29836fc 100644 --- a/arch/hexagon/Kconfig +++ b/arch/hexagon/Kconfig @@ -3,6 +3,7 @@ comment "Linux Kernel Configuration for Hexagon" config HEXAGON def_bool y + select ARCH_32BIT_OFF_T select HAVE_OPROFILE # Other pending projects/to-do items. # select HAVE_REGS_AND_STACK_ACCESS_API diff --git a/arch/m32r/Kconfig b/arch/m32r/Kconfig index 9e44bbd..c6865a9 100644 --- a/arch/m32r/Kconfig +++ b/arch/m32r/Kconfig @@ -1,6 +1,7 @@ config M32R bool default y + select ARCH_32BIT_OFF_T select HAVE_IDE select HAVE_OPROFILE select INIT_ALL_POSSIBLE diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index 498b567..e9897e4 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig @@ -1,6 +1,7 @@ config M68K bool default y + select ARCH_32BIT_OFF_T select ARCH_MIGHT_HAVE_PC_PARPORT if ISA select HAVE_IDE select HAVE_AOUT if MMU diff --git a/arch/metag/Kconfig b/arch/metag/Kconfig index 0b389a8..6b44d37 100644 --- a/arch/metag/Kconfig +++ b/arch/metag/Kconfig @@ -1,5 +1,6 @@ config METAG def_bool y + select ARCH_32BIT_OFF_T select EMBEDDED select GENERIC_ATOMIC64 select GENERIC_CLOCKEVENTS diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig index 0bce820..4b293e5 100644 --- a/arch/microblaze/Kconfig +++ b/arch/microblaze/Kconfig @@ -1,5 +1,6 @@ config MICROBLAZE def_bool y + select ARCH_32BIT_OFF_T select ARCH_HAS_GCOV_PROFILE_ALL select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_WANT_IPC_PARSE_VERSION diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 71683a8..2e42c26 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -1,6 +1,7 @@ config MIPS bool default y + select ARCH_32BIT_OFF_T if !64BIT select ARCH_SUPPORTS_UPROBES select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_MIGHT_HAVE_PC_SERIO diff --git a/arch/mn10300/Kconfig b/arch/mn10300/Kconfig index 78ae555..edf7372 100644 --- a/arch/mn10300/Kconfig +++ b/arch/mn10300/Kconfig @@ -1,5 +1,6 @@ config MN10300 def_bool y + select ARCH_32BIT_OFF_T select HAVE_OPROFILE select HAVE_UID16 select GENERIC_IRQ_SHOW diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig index 4375554..a38fc38 100644 --- a/arch/nios2/Kconfig +++ b/arch/nios2/Kconfig @@ -1,5 +1,6 @@ config NIOS2 def_bool y + select ARCH_32BIT_OFF_T select ARCH_WANT_OPTIONAL_GPIOLIB select CLKSRC_OF select GENERIC_ATOMIC64 diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig index 443f44d..7bef847 100644 --- a/arch/openrisc/Kconfig +++ b/arch/openrisc/Kconfig @@ -5,6 +5,7 @@ config OPENRISC def_bool y + select ARCH_32BIT_OFF_T select OF select OF_EARLY_FLATTREE select IRQ_DOMAIN diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index 729f891..8bf0fe2 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig @@ -1,5 +1,6 @@ config PARISC def_bool y + select ARCH_32BIT_OFF_T if !64BIT select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS select ARCH_MIGHT_HAVE_PC_PARPORT select HAVE_IDE diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index db49e0d..113d893 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -88,6 +88,7 @@ config ARCH_HAS_DMA_SET_COHERENT_MASK config PPC bool default y + select ARCH_32BIT_OFF_T if PPC32 select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_MIGHT_HAVE_PC_SERIO select BINFMT_ELF diff --git a/arch/score/Kconfig b/arch/score/Kconfig index 366e1b5..bc7bc7a 100644 --- a/arch/score/Kconfig +++ b/arch/score/Kconfig @@ -2,6 +2,7 @@ menu "Machine selection" config SCORE def_bool y + select ARCH_32BIT_OFF_T select GENERIC_IRQ_SHOW select GENERIC_IOMAP select GENERIC_ATOMIC64 diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index d514df7e..1e9d63a 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -52,6 +52,7 @@ config SUPERH config SUPERH32 def_bool ARCH = "sh" + select ARCH_32BIT_OFF_T select HAVE_KPROBES select HAVE_KRETPROBES select HAVE_IOREMAP_PROT if MMU && !X2TLB diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 56442d2..1268a2a 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -46,6 +46,7 @@ config SPARC config SPARC32 def_bool !64BIT + select ARCH_32BIT_OFF_T select GENERIC_ATOMIC64 select CLZ_TAB select HAVE_UID16 diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig index 106c21b..ef2e7ec 100644 --- a/arch/tile/Kconfig +++ b/arch/tile/Kconfig @@ -3,6 +3,7 @@ config TILE def_bool y + select ARCH_32BIT_OFF_T if !64BIT select HAVE_PERF_EVENTS select USE_PMC if PERF_EVENTS select HAVE_DMA_ATTRS diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig index c9faddc..1a8c3c0 100644 --- a/arch/unicore32/Kconfig +++ b/arch/unicore32/Kconfig @@ -1,5 +1,6 @@ config UNICORE32 def_bool y + select ARCH_32BIT_OFF_T select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_MIGHT_HAVE_PC_SERIO select HAVE_MEMBLOCK diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index db3622f..cc16336 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -20,6 +20,7 @@ config X86 select ACPI_LEGACY_TABLES_LOOKUP if ACPI select ACPI_SYSTEM_POWER_STATES_SUPPORT if ACPI select ANON_INODES + select ARCH_32BIT_OFF_T if X86_32 select ARCH_CLOCKSOURCE_DATA select ARCH_DISCARD_MEMBLOCK select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE diff --git a/arch/x86/um/Kconfig b/arch/x86/um/Kconfig index ed56a1c..8436bcd 100644 --- a/arch/x86/um/Kconfig +++ b/arch/x86/um/Kconfig @@ -21,6 +21,7 @@ config 64BIT config X86_32 def_bool !64BIT select HAVE_AOUT + select ARCH_32BIT_OFF_T select ARCH_WANT_IPC_PARSE_VERSION select MODULES_USE_ELF_REL select CLONE_BACKWARDS diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index 82044f7..7ff155a 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig @@ -3,6 +3,7 @@ config ZONE_DMA config XTENSA def_bool y + select ARCH_32BIT_OFF_T select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_IPC_PARSE_VERSION select ARCH_WANT_OPTIONAL_GPIOLIB diff --git a/include/linux/fcntl.h b/include/linux/fcntl.h index 76ce329..46960a1 100644 --- a/include/linux/fcntl.h +++ b/include/linux/fcntl.h @@ -5,7 +5,7 @@ #ifndef force_o_largefile -#define force_o_largefile() (BITS_PER_LONG != 32) +#define force_o_largefile() (!IS_ENABLED(CONFIG_ARCH_32BIT_OFF_T)) #endif #if BITS_PER_LONG == 32 -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/