lkml.org 
[lkml]   [2010]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: 2.6.35-rc4-git3: Reported regressions from 2.6.34
    From
    Date
    Le jeudi 08 juillet 2010 à 21:34 -0700, David Miller a écrit :
    > From: Linus Torvalds <torvalds@linux-foundation.org>
    > Date: Thu, 8 Jul 2010 18:34:25 -0700
    >
    > > On Thu, Jul 8, 2010 at 4:33 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
    > >>
    > >> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=16187
    > >> Subject : Carrier detection failed in dhcpcd when link is up
    > >> Submitter : Christian Casteyde <casteyde.christian@free.fr>
    > >> Date : 2010-06-12 15:15 (27 days old)
    > >> First-Bad-Commit: http://git.kernel.org/linus/10708f37ae729baba9b67bd134c3720709d4ae62
    > >> Handled-By : Andrew Morton <akpm@linux-foundation.org>
    > >
    > > David? This bisects to a networking commit. Doesn't look sensible, but
    > > what do I know?
    >
    > My suspicion is that dhcpd uses netlink to dump the info of the
    > available links, and due to some bug gets confused with the new 64-bit
    > statistic netlink attribute being there now.
    > a second to have a look at this.

    It could be a dhcpcd bug because of extended size of answer

    According to strace, dhcpcd tries a recvmsg() call with
    a 256 bytes buffer to hold answer.

    Looking at current dhcpcd source, I confirm it cannot realloc its buffer

    static int
    get_netlink(int fd, int flags,
    int (*callback)(struct nlmsghdr *))
    {
    char *buffer = NULL;
    ssize_t bytes;
    struct nlmsghdr *nlm;
    int r = -1;

    buffer = xzalloc(sizeof(char) * BUFFERLEN);
    for (;;) {
    bytes = recv(fd, buffer, BUFFERLEN, flags);
    if (bytes == -1) {
    if (errno == EAGAIN) {
    r = 0;
    goto eexit;
    }
    if (errno == EINTR)
    continue;
    goto eexit;
    }


    This program needs to fix this.


    --
    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/

    \
     
     \ /
      Last update: 2010-07-09 07:33    [W:3.611 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site