Mark H Weaver <[email protected]> skribis:

> ../strace: Bad OS release string: '3.14-2-amd64'

The relevant code in strace.c in 4.7 is this:

--8<---------------cut here---------------start------------->8---
        /* u.release has this form: "3.2.9[-some-garbage]" */
        rel = 0;
        p = u.release;
        for (;;) {
                if (!(*p >= '0' && *p <= '9'))
                        error_msg_and_die("Bad OS release string: '%s'", 
u.release);
                /* Note: this open-codes KERNEL_VERSION(): */
                rel = (rel << 8) | atoi(p);
                if (rel >= KERNEL_VERSION(1,0,0))
                        break;
                while (*p >= '0' && *p <= '9')
                        p++;
                if (*p != '.')
                        error_msg_and_die("Bad OS release string: '%s'", 
u.release);
                p++;
        }
        return rel;
--8<---------------cut here---------------end--------------->8---

Basically it expects A.B.C where A, B, and C are numbers, which is not
the case on this particular build machine.

This is really an strace bug since there are occasionally two-number
version strings for Linux:
<https://www.kernel.org/pub/linux/kernel/v3.x/>.
We should report it there.

Ludo’.



Reply via email to