Bug 994168 - Reading /proc/timer_list with small buffers never finishes
Summary: Reading /proc/timer_list with small buffers never finishes
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 19
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-08-06 15:55 UTC by Enrico Scholz
Modified: 2013-09-20 13:11 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-09-20 13:11:49 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Enrico Scholz 2013-08-06 15:55:19 UTC
Description of problem:

Reading /proc/timer_list with small buffers never returns; e.g.

  dd if=/proc/timer_list bs=10

This causes regression in a program (dropbearkey) which reads /proc/timer_list to fill its entropy pool.  This worked with previous kernels (last tested with 3.4).


Version-Release number of selected component (if applicable):

kernel-3.10.3-300.fc19.x86_64

Comment 4 Michele Baldessari 2013-09-03 22:18:26 UTC
Hi Enrico,

this is fixed via:
commit 84a78a6504f5c5394a8e558702e5b54131f01d14
Author: Nathan Zimmer <nzimmer>
Date:   Wed Aug 28 16:35:14 2013 -0700

    timer_list: correct the iterator for timer_list
    
    Correct an issue with /proc/timer_list reported by Holger.
    
    When reading from the proc file with a sufficiently small buffer, 2k so
    not really that small, there was one could get hung trying to read the
    file a chunk at a time.
    
    The timer_list_start function failed to account for the possibility that
    the offset was adjusted outside the timer_list_next.
    
    Signed-off-by: Nathan Zimmer <nzimmer>
    Reported-by: Holger Hans Peter Freyther <holger>
    Cc: John Stultz <john.stultz>
    Cc: Thomas Gleixner <tglx>
    Cc: Berke Durak <berke.durak>
    Cc: Jeff Layton <jlayton>
    Tested-by: Al Viro <viro.org.uk>
    Cc: <stable.org> # 3.10.x
    Signed-off-by: Andrew Morton <akpm>
    Signed-off-by: Linus Torvalds <torvalds>

From a quick look it hasn't hit 3.10.10 yet but I assume it will end in the next one.

hth,
Michele

Comment 5 Michele Baldessari 2013-09-08 08:03:46 UTC
It is in 3.10.11:
* b3772c8 - (2013-09-07 22:09:58 -0700)  timer_list: correct the iterator for timer_list <Nathan Zimmer>

$ git tag --contains b3772c8
v3.10.11

So this can be closed with the next update

Comment 6 Josh Boyer 2013-09-18 20:49:30 UTC
*********** MASS BUG UPDATE **************

We apologize for the inconvenience.  There is a large number of bugs to go through and several of them have gone stale.  Due to this, we are doing a mass bug update across all of the Fedora 19 kernel bugs.

Fedora 19 has now been rebased to 3.11.1-200.fc19.  Please test this kernel update and let us know if you issue has been resolved or if it is still present with the newer kernel.

If you experience different issues, please open a new bug report for those.

Comment 7 Michele Baldessari 2013-09-20 07:59:18 UTC
Josh, this one can be closed.

Comment 8 Josh Boyer 2013-09-20 13:11:49 UTC
Yep, thank you.


Note You need to log in before you can comment on or make changes to this bug.