From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Josh Durgin <josh.durgin@inktank.com>,
Sage Weil <sage@inktank.com>
Subject: [ 03/19] libceph: fix invalid unsigned->signed conversion for timespec encoding
Date: Thu, 11 Jul 2013 15:01:20 -0700 [thread overview]
Message-ID: <20130711214831.023271016@linuxfoundation.org> (raw)
In-Reply-To: <20130711214830.611455274@linuxfoundation.org>
3.10-stable review patch. If anyone has any objections, please let me know.
------------------
From: Josh Durgin <josh.durgin@inktank.com>
commit 8b8cf8917f9b5d74e04f281272d8719ce335a497 upstream.
__kernel_time_t is a long, which cannot hold a U32_MAX on 32-bit
architectures. Just drop this check as it has limited value.
This fixes a crash like:
[ 957.905812] kernel BUG at /srv/autobuild-ceph/gitbuilder.git/build/include/linux/ceph/decode.h:164!
[ 957.914849] Internal error: Oops - BUG: 0 [#1] SMP ARM
[ 957.919978] Modules linked in: rbd libceph libcrc32c ipmi_devintf ipmi_si ipmi_msghandler nfsd nfs_acl auth_rpcgss nfs fscache lockd sunrpc
[ 957.932547] CPU: 1 Tainted: G W (3.9.0-ceph-19bb6a83-highbank #1)
[ 957.939881] PC is at ceph_osdc_build_request+0x8c/0x4f8 [libceph]
[ 957.945967] LR is at 0xec520904
[ 957.949103] pc : [<bf13e76c>] lr : [<ec520904>] psr: 20000153
[ 957.949103] sp : ec753df8 ip : 00000001 fp : ec53e100
[ 957.960571] r10: ebef25c0 r9 : ec5fa400 r8 : ecbcc000
[ 957.965788] r7 : 00000000 r6 : 00000000 r5 : ffffffff r4 : 00000020
[ 957.972307] r3 : 51cc8143 r2 : ec520900 r1 : ec753e58 r0 : ec520908
[ 957.978827] Flags: nzCv IRQs on FIQs off Mode SVC_32 ISA ARM Segment user
[ 957.986039] Control: 10c5387d Table: 2c59c04a DAC: 00000015
[ 957.991777] Process rbd (pid: 2138, stack limit = 0xec752238)
[ 957.997514] Stack: (0xec753df8 to 0xec754000)
[ 958.001864] 3de0: 00000001 00000001
[ 958.010032] 3e00: 00000001 bf139744 ecbcc000 ec55a0a0 00000024 00000000 ebef25c0 fffffffe
[ 958.018204] 3e20: ffffffff 00000000 00000000 00000001 ec5fa400 ebef25c0 ec53e100 bf166b68
[ 958.026377] 3e40: 00000000 0000220f fffffffe ffffffff ec753e58 bf13ff24 51cc8143 05b25ed2
[ 958.034548] 3e60: 00000001 00000000 00000000 bf1688d4 00000001 00000000 00000000 00000000
[ 958.042720] 3e80: 00000001 00000060 ec5fa400 ed53d200 ed439600 ed439300 00000001 00000060
[ 958.050888] 3ea0: ec5fa400 ed53d200 00000000 bf16a320 00000000 ec53e100 00000040 ec753eb8
[ 958.059059] 3ec0: ec51df00 ed53d7c0 ed53d200 ed53d7c0 00000000 ed53d7c0 ec5fa400 bf16ed70
[ 958.067230] 3ee0: 00000000 00000060 00000002 ed53d200 00000000 bf16acf4 ed53d7c0 ec752000
[ 958.075402] 3f00: ed980e50 e954f5d8 00000000 00000060 ed53d240 ed53d258 ec753f80 c04f44a8
[ 958.083574] 3f20: edb7910c ec664700 01ade920 c02e4c44 00000060 c016b3dc ec51de40 01adfb84
[ 958.091745] 3f40: 00000060 ec752000 ec753f80 ec752000 00000060 c0108444 00000007 ec51de48
[ 958.099914] 3f60: ed0eb8c0 00000000 00000000 ec51de40 01adfb84 00000001 00000060 c0108858
[ 958.108085] 3f80: 00000000 00000000 51cc8143 00000060 01adfb84 00000007 00000004 c000dd68
[ 958.116257] 3fa0: 00000000 c000dbc0 00000060 01adfb84 00000007 01adfb84 00000060 01adfb80
[ 958.124429] 3fc0: 00000060 01adfb84 00000007 00000004 beded1a8 00000000 01adf2f0 01ade920
[ 958.132599] 3fe0: 00000000 beded180 b6811324 b6811334 800f0010 00000007 2e7f5821 2e7f5c21
[ 958.140815] [<bf13e76c>] (ceph_osdc_build_request+0x8c/0x4f8 [libceph]) from [<bf166b68>] (rbd_osd_req_format_write+0x50/0x7c [rbd])
[ 958.152739] [<bf166b68>] (rbd_osd_req_format_write+0x50/0x7c [rbd]) from [<bf1688d4>] (rbd_dev_header_watch_sync+0xe0/0x204 [rbd])
[ 958.164486] [<bf1688d4>] (rbd_dev_header_watch_sync+0xe0/0x204 [rbd]) from [<bf16a320>] (rbd_dev_image_probe+0x23c/0x850 [rbd])
[ 958.175967] [<bf16a320>] (rbd_dev_image_probe+0x23c/0x850 [rbd]) from [<bf16acf4>] (rbd_add+0x3c0/0x918 [rbd])
[ 958.185975] [<bf16acf4>] (rbd_add+0x3c0/0x918 [rbd]) from [<c02e4c44>] (bus_attr_store+0x20/0x2c)
[ 958.194850] [<c02e4c44>] (bus_attr_store+0x20/0x2c) from [<c016b3dc>] (sysfs_write_file+0x168/0x198)
[ 958.203984] [<c016b3dc>] (sysfs_write_file+0x168/0x198) from [<c0108444>] (vfs_write+0x9c/0x170)
[ 958.212768] [<c0108444>] (vfs_write+0x9c/0x170) from [<c0108858>] (sys_write+0x3c/0x70)
[ 958.220768] [<c0108858>] (sys_write+0x3c/0x70) from [<c000dbc0>] (ret_fast_syscall+0x0/0x30)
[ 958.229199] Code: e59d1058 e5913000 e3530000 ba000114 (e7f001f2)
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
include/linux/ceph/decode.h | 5 -----
1 file changed, 5 deletions(-)
--- a/include/linux/ceph/decode.h
+++ b/include/linux/ceph/decode.h
@@ -160,11 +160,6 @@ static inline void ceph_decode_timespec(
static inline void ceph_encode_timespec(struct ceph_timespec *tv,
const struct timespec *ts)
{
- BUG_ON(ts->tv_sec < 0);
- BUG_ON(ts->tv_sec > (__kernel_time_t)U32_MAX);
- BUG_ON(ts->tv_nsec < 0);
- BUG_ON(ts->tv_nsec > (long)U32_MAX);
-
tv->tv_sec = cpu_to_le32((u32)ts->tv_sec);
tv->tv_nsec = cpu_to_le32((u32)ts->tv_nsec);
}
next prev parent reply other threads:[~2013-07-11 22:01 UTC|newest]
Thread overview: 125+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-11 22:01 [ 00/19] 3.10.1-stable review Greg Kroah-Hartman
2013-07-11 22:01 ` [ 01/19] libceph: Fix NULL pointer dereference in auth client code Greg Kroah-Hartman
2013-07-11 22:01 ` [ 02/19] ceph: fix sleeping function called from invalid context Greg Kroah-Hartman
2013-07-11 22:01 ` Greg Kroah-Hartman [this message]
2013-07-11 22:01 ` [ 04/19] drivers/cdrom/cdrom.c: use kzalloc() for failing hardware Greg Kroah-Hartman
2013-07-11 22:01 ` [ 05/19] module: do percpu allocation after uniqueness check. No, really! Greg Kroah-Hartman
2013-07-11 22:01 ` [ 06/19] charger-manager: Ensure event is not used as format string Greg Kroah-Hartman
2013-07-11 22:01 ` [ 07/19] hpfs: better test for errors Greg Kroah-Hartman
2013-07-11 22:01 ` [ 08/19] block: do not pass disk names as format strings Greg Kroah-Hartman
2013-07-11 22:01 ` [ 09/19] crypto: sanitize argument for format string Greg Kroah-Hartman
2013-07-11 22:01 ` [ 10/19] MAINTAINERS: add stable_kernel_rules.txt to stable maintainer information Greg Kroah-Hartman
2013-07-11 22:01 ` [ 11/19] futex: Take hugepages into account when generating futex_key Greg Kroah-Hartman
2013-07-11 22:01 ` [ 12/19] tty: Reset itty for other pty Greg Kroah-Hartman
2013-07-11 22:01 ` [ 13/19] Revert "serial: 8250_pci: add support for another kind of NetMos Technology PCI 9835 Multi-I/O Controller" Greg Kroah-Hartman
2013-07-11 22:01 ` [ 14/19] NFSv4.1 end back channel session draining Greg Kroah-Hartman
2013-07-11 22:01 ` [ 15/19] nfsd4: fix decoding of compounds across page boundaries Greg Kroah-Hartman
2013-07-11 22:01 ` [ 16/19] KVM: VMX: mark unusable segment as nonpresent Greg Kroah-Hartman
2013-07-11 22:01 ` [ 17/19] SCSI: sd: Fix parsing of temporary cache mode prefix Greg Kroah-Hartman
2013-07-11 22:01 ` [ 18/19] cpufreq: Fix cpufreq regression after suspend/resume Greg Kroah-Hartman
2013-07-11 22:01 ` [ 19/19] Revert "memcg: avoid dangling reference count in creation failure" Greg Kroah-Hartman
2013-07-11 22:14 ` [ 00/19] 3.10.1-stable review Josh Boyer
2013-07-14 22:54 ` Benjamin Herrenschmidt
2013-07-11 22:29 ` Dave Jones
2013-07-11 22:44 ` Greg Kroah-Hartman
2013-07-12 1:51 ` Steven Rostedt
2013-07-12 14:15 ` Guenter Roeck
2013-07-12 15:22 ` Linus Torvalds
2013-07-12 15:47 ` Steven Rostedt
2013-07-12 15:55 ` Linus Torvalds
2013-07-12 16:17 ` Ingo Molnar
2013-07-12 16:35 ` Josh Boyer
2013-07-12 16:36 ` Josh Boyer
2013-07-12 17:05 ` Greg Kroah-Hartman
2013-07-14 22:40 ` Benjamin Herrenschmidt
2013-07-12 16:48 ` Steven Rostedt
2013-07-12 17:31 ` Guenter Roeck
2013-07-12 17:50 ` Linus Torvalds
2013-07-12 18:11 ` Guenter Roeck
2013-07-12 19:35 ` Theodore Ts'o
2013-07-12 19:49 ` Steven Rostedt
2013-07-12 19:55 ` Willy Tarreau
2013-07-12 20:19 ` Dave Jones
2013-07-12 20:28 ` Steven Rostedt
2013-07-12 20:31 ` Steven Rostedt
2013-07-12 21:19 ` Justin M. Forbes
2013-07-13 0:47 ` Jochen Striepe
2013-07-13 11:11 ` Steven Rostedt
2013-07-13 15:10 ` Dave Jones
2013-07-13 15:54 ` Steven Rostedt
2013-07-12 19:50 ` Willy Tarreau
2013-07-12 20:47 ` Theodore Ts'o
2013-07-12 21:02 ` Guenter Roeck
2013-07-13 6:22 ` Greg Kroah-Hartman
2013-07-13 6:36 ` Willy Tarreau
2013-07-13 6:48 ` Greg Kroah-Hartman
2013-07-13 7:12 ` Willy Tarreau
2013-07-15 4:12 ` Li Zefan
2013-07-15 4:43 ` Willy Tarreau
2013-07-13 11:42 ` Theodore Ts'o
2013-07-13 18:27 ` Greg Kroah-Hartman
2013-07-14 2:22 ` Theodore Ts'o
2013-07-14 3:51 ` Greg Kroah-Hartman
2013-07-14 5:24 ` Guenter Roeck
2013-07-14 20:31 ` Geert Uytterhoeven
2013-07-13 6:43 ` Guenter Roeck
2013-07-13 6:58 ` Greg Kroah-Hartman
2013-07-14 23:52 ` Benjamin Herrenschmidt
2013-07-15 1:40 ` Linus Torvalds
2013-07-15 2:08 ` Benjamin Herrenschmidt
2013-07-14 22:58 ` Benjamin Herrenschmidt
2013-07-12 0:50 ` When to push bug fixes to mainline Theodore Ts'o
2013-07-12 1:20 ` [Ksummit-2013-discuss] " Nicholas A. Bellinger
2013-07-12 1:54 ` Steven Rostedt
2013-07-12 9:46 ` Jiri Kosina
2013-07-12 11:19 ` Josh Boyer
2013-07-12 2:57 ` John W. Linville
2013-07-12 3:34 ` Greg Kroah-Hartman
2013-07-12 7:32 ` James Bottomley
2013-07-12 17:20 ` H. Peter Anvin
2013-07-12 17:28 ` Greg Kroah-Hartman
2013-07-12 17:50 ` Steven Rostedt
2013-07-12 17:59 ` Linus Torvalds
2013-07-12 18:14 ` Steven Rostedt
2013-07-13 17:52 ` Geert Uytterhoeven
2013-07-12 17:57 ` Theodore Ts'o
2013-07-12 18:13 ` Guenter Roeck
2013-07-12 18:16 ` H. Peter Anvin
2013-07-12 18:28 ` H. Peter Anvin
2013-07-12 19:44 ` Linus Torvalds
2013-07-12 19:53 ` Steven Rostedt
2013-07-12 20:09 ` Shuah Khan
2013-07-12 20:33 ` Greg Kroah-Hartman
2013-07-12 20:46 ` Steven Rostedt
2013-07-12 22:19 ` H. Peter Anvin
2013-07-12 22:17 ` H. Peter Anvin
2013-07-13 6:44 ` Ingo Molnar
2013-07-13 0:24 ` Rafael J. Wysocki
2013-07-13 1:32 ` Greg Kroah-Hartman
2013-07-13 12:16 ` Rafael J. Wysocki
2013-07-12 3:25 ` Li Zefan
2013-07-15 4:22 ` Rob Landley
2013-07-12 5:14 ` Willy Tarreau
2013-07-16 7:19 ` David Lang
2013-07-16 16:40 ` [Ksummit-2013-discuss] " Takashi Iwai
2013-07-16 16:42 ` David Lang
2013-07-16 19:29 ` Takashi Iwai
2013-07-16 16:59 ` Mark Brown
2013-07-16 17:58 ` Luck, Tony
2013-07-16 18:29 ` Linus Torvalds
2013-07-16 18:41 ` Steven Rostedt
2013-07-16 19:11 ` Greg Kroah-Hartman
2013-07-16 19:43 ` Steven Rostedt
2013-07-16 20:10 ` Willy Tarreau
2013-07-17 2:58 ` Ben Hutchings
2013-07-17 9:43 ` Li Zefan
2013-07-16 18:48 ` Willy Tarreau
2013-07-19 10:13 ` Ingo Molnar
2013-07-16 18:39 ` Willy Tarreau
2013-07-16 18:40 ` H. Peter Anvin
2013-07-16 20:29 ` David Lang
2013-07-12 17:11 ` H. Peter Anvin
2013-07-12 17:20 ` [ 00/19] 3.10.1-stable review Shuah Khan
2013-07-12 17:29 ` Greg Kroah-Hartman
2013-07-13 4:14 ` Satoru Takeuchi
2013-07-14 23:06 ` Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130711214831.023271016@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=josh.durgin@inktank.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sage@inktank.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome